为什么我不能给按钮分配事件监听器?

问题描述 投票:-2回答:1

以下是在我的html中为所有按钮元素添加事件监听器的代码。结果 - 没有注册事件监听器,也没有错误。

window.onload = function(){
    addEvListeners();
    // This function is to assign ELs to buttons in my HTML
    function addEvListeners(){
        var target = document.getElementsByTagName("button");
        for (i = 0; i <= target.length - 1; i ++){
            target[i].addEventListener("click", function(){model();},false);
        }
    }
    function model(){
        return true; // just for placeholder
    }
}
javascript dom-events addeventlistener event-listener
1个回答
0
投票
<html>
    <head>
        <script>
            window.onload = function(){
                addEvListeners();
                // This function is to assign ELs to buttons in my HTML
                function addEvListeners(){
                    var target = document.getElementsByTagName("button");
                    for (i = 0; i <= target.length - 1; i ++){
                        target[i].addEventListener("click", function(){model();},false);
                    }
                }
                function model(){
                    console.log('yo!');
                }
            }
        </script>
    </head>
    <body>
        <button>Click Me</button>
    </body>
</html>

这对我来说是可行的。最后我在控制台得到了一个哟。有没有可能你的按钮元素不存在于 onload?

© www.soinside.com 2019 - 2024. All rights reserved.