我是 JS 新手,我正在尝试获得这个结果( https://www.w3schools.com/howto/tryit.asp?filename=tryhow_js_popup ),但我在这段代码的移动 View 上遇到了一些问题......它在所有其他设备上都运行良好,但不是在 iPhone(x、8 等)上。怎么可能?
function myFunction() {
var popup = document.getElementById("myPopup");
popup.classList.toggle("show");
}
最佳答案
如果问题恰好发生在 Safari 上,则可能是由于 CSS 中缺少 cursor:pointer;
造成的。
Safari 不喜欢在不遵循 certain conditions 的 HTML 元素上触发您的函数。 .
顺便说一句,即使他们这样做(根据我的个人经验),也不能保证你的听众真的会兴奋。
发生这种情况是因为像 Safari 或 IE 这样的浏览器似乎更多的是一个好笑话,而不是一个好的浏览器。
我们如何处理这个问题?
嗯,在现实生活中,我们主要使用一些比我们更好地执行跨浏览器优化的库(例如 Vue 或 React)。
对于您的简单用例,您可能希望将“myPopup”元素转换为零样式按钮。
所有主流浏览器都或多或少可以正常使用按钮。
关于javascript - Onclick 功能在移动设备上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58042489/