为什么这个按钮在 ios 上不起作用?它在桌面和安卓上运行良好。如果 clickHandler 被定义为常规函数,它可以在 ios 上运行。
http://codepen.io/CalebEverett/pen/RRmYgx
<html>
<head>
<style>
button {
width: 150px;
height 50px;
}
</style>
</head>
<body>
<div id="testdiv">it doesn't work</div>
<button id="do">Button</button>
</body>
<script>
const clickHandler = () => {
document.getElementById("testdiv").innerHTML = "it works!"
}
document.getElementById("do").addEventListener("click", clickHandler, false);
</script>
<html>
最佳答案
您正在使用 arrow function ,这是 ES6 的一项功能。
对 ES6 的一般支持和具体的箭头函数支持尚未广泛普及,并且仅限于某些浏览器的最新版本。具体来说,Safari 在桌面版 (Mac) 或移动版 (iOS) 上都不支持箭头功能,但许多其他浏览器也会出现同样的问题(包括旧版 Android 浏览器、IE 等)。
您必须将 ES6 代码转换为更广泛支持的代码,或者坚持使用更标准的 Javascript。
关于javascript - ios addEventListener 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39103829/