我是JS的新手,我正在尝试获得此结果(https://www.w3schools.com/howto/tryit.asp?filename=tryhow_js_popup(,但是此代码的移动视图遇到了一些问题...它在所有其他设备上都运行良好,但在iPhone(x,8等(上则不然。怎么可能?
function myFunction() {
var popup = document.getElementById("myPopup");
popup.classList.toggle("show");
}
如果问题完全发生在 Safari 上,则可能是由于 CSS 中缺少cursor: pointer;
。
Safari 不喜欢在不遵循某些条件的 HTML 元素上触发您的函数。
顺便说一句,即使他们这样做了(根据我的个人经验(,也不能保证你的听众真的会开火。
发生这种情况是因为像 Safari 或 IE 这样的浏览器似乎更像是一个好笑话而不是一个好的浏览器。
我们该如何处理?
好吧,IRL 我们主要使用一些库(例如,Vue 或 React(,它们比我们更好地执行跨浏览器优化。
对于您的简单用例,您可能希望将"myPopup"元素转换为零样式按钮。
所有主流浏览器都倾向于或多或少地使用按钮工作正常。