Javascript "addEventListener"事件在页面加载时触发

标签 javascript dom-events addeventlistener

<分区>

当我运行以下脚本时,事件总是在页面加载时触发。我不确定我在这里做错了什么,我创建了元素,在 DOM 中找到它然后附加一个监听器,但它总是在页面加载时触发事件,而不是在单击元素时触发。

<script type="text/javascript" language="javascript">
    document.write("<div id=\"myDiv\">I am a div</div>");
    el = document.getElementById("myDiv");
    el.addEventListener("click", alert("clicktrack"), false);
</script>

最佳答案

el.addEventListener("click", alert("clicktrack"), false);

执行此行时,将调用alert 并返回undefined。要传递警报代码,您需要将其包装在一个函数中。

el.addEventListener("click", function() { alert("clicktrack"); }, false);

关于Javascript "addEventListener"事件在页面加载时触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2373995/

相关文章:

javascript - 函数未定义 C#

javascript - 将 flatlist render "Item"传递给函数。 React Native(有点js问题)

javascript - 仅当宽度大于 x 像素时才执行 javascript 代码

javascript - jQuery 数据值不更新

javascript - 无法在 'getComputedStyle' : parameter 1 is not of type 'Window' error 上执行 'Element'

javascript - 事件处理程序上的 dojo 不适用于多个按钮

javascript - addEventListener 不会将监听器附加到元素

javascript - 为什么我的 onchange 事件是在我的页面加载时触发的,而不是在我单击单选按钮时触发的?

javascript - 在多个相同 ID 上使用 addEventListener

javascript - addEventListener() 不适用于元素列表