javascript - Onclick 功能在移动设备上不起作用

标签 javascript mobile onclick popup

我是 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/

相关文章:

javascript - 异步过滤 Promise 数组

c# - 如何识别网站是否源自移动浏览器?

html - 为什么 Internet Explorer 手机会放大元素?

android - 单击项目时没有显示 toast RecyclerView

javascript - 如何在通过 onClick() 调用的函数中 .stopPropagation()

javascript - 将客户端套接字连接到 cookie

javascript - Jquery - 具有多个类别的图像过滤器

javascript - Browserify 在多次 require 调用时仅执行一次模块代码

ios - 我可以使用 Testflight 构建在物理 ios 设备上自动化测试吗?

c# - 使用 ImageButton 打开 URL