为什么JavaScript 点击事件失效?

为什么javascript 点击事件失效?

javascript 单击事件失效困扰

某些情况下,javascript 单击事件可能会失效,出现该问题可能是由于函数执行时机不当。

代码示例:

(function() {
    var btn = document.getelementbyid("btn");
    function getname(name) {
        alert(name);
    }
    btn.onclick = getname("123");
})();

问题分析:

该代码中,getname("123") 立即执行,返回 undefined,而不传任何参数给 btn.onclick。因此,当单击按钮时,btn.onclick 为 undefined,不会引发任何操作。

解决办法:

要解决此问题,需要在单击事件处理程序中调用 getname 函数,而不是在声明时立即调用它。

(function() {
    var btn = document.getElementById("btn");
    function getName(name) {
        alert(name);
    }
    btn.onclick = function() { // 匿名函数
        getName("123");
    };
})();

这样,单击按钮时,btn.onclick 会执行包含 getname("123") 调用在内的匿名函数,从而正确触发警报对话框。

以上就是为什么JavaScript 点击事件失效?的详细内容,更多请关注其它相关文章!