javascript - DOMContentLoaded 在 IOS Safari 上不会触发

标签 javascript html dom-manipulation

首先:我是一般编码新手。我三个月前才开始。

我正在为 friend 建立一个网站。它的导航栏应该响应地改变它的 html 内容,这在我测试的每台设备上都可以正常工作。但是当我尝试使用 DOMContentLoaded 设置 nav-ul 的innerHtml 时,出现了问题,但仅限于 IOS Safari。 不幸的是,我无法在 ios safari 上使用任何浏览器开发人员工具。

这是我的 app.js

document.addEventListener("DOMContentLoaded", function() {
  const rect = document.querySelector(".main-container");
  const screenWidth = rect.getBoundingClientRect().width;

  if (screenWidth <= 800) {
    document.getElementById("navbar-list").innerHTML = 
     `<li>
        <a href="tel:xxxxx">
          <img src="./vector/phone1.png" alt="" class="icon">
          <p id="number">
            Anrufen
          </p>
        </a>
      </li>
      <li>
        <a href="whatsapp://send?text=Hallo! ich bin ein text der in einem whatsapp button programmiert ist auf peters website!&phone=xxxxx">
          <img src="./vector/icons8-whatsapp.svg" alt="" class="icon">
          <p>
            WhatsApp
          </p>
        </a>
      </li>`
  } else {
    document.getElementById("navbar-list").innerHTML = 
     `<li>
        <a href="#home">
          Home
        </a>
      </li>
      <li>
        <a href="#faecher">
          Fächer
        </a>
      </li>
      <li>
        <a href="#konzept">
          Konzept
        </a>
      </li>
      <li>
        <a href="#reviews">
          Ergebnisse
        </a>
      </li>
      <li>
        <a href="#contact">
          Kontakt
        </a>
      </li>`
   }
});

我是否因为必须提及一些异步内容而错过了一些等待内容?

感谢您的帮助!

最佳答案

您可以在该回调中记录 document.readyState 吗?如果不是loading,则表示事件在注册事件监听器之前触发。

更多信息请参见:https://developer.apple.com/forums/thread/651215

关于javascript - DOMContentLoaded 在 IOS Safari 上不会触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66018606/

相关文章:

javascript - 将提示框中输入的值写入asp.net中的文本框

javascript - 这个 javascript 对象修改是如何工作的?我不明白范围,它不会持续存在

javascript - 响应式网页设计的 DOM 操作性能

javascript - 生成元素和关联 $.data() 的更有效方法? [jQuery]

javascript - ajax 调用后无法接收更新的 props( react )

jquery - 不支持 Youtube 链接

html - 卡片内的下拉菜单渗入下一列卡片列

html - CSS/HTML : white space break fix and now cant code fine?

jquery - 如何使用 jQuery 移动 div 的多个实例?

javascript - React.js 引用没有出现在对象内部