Javascript "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>
2 ответов
el.addEventListener("click", alert("clicktrack"), false);
когда эта строка выполняется, то alert
будет вызываться и возвращаться undefined
. Чтобы передать код предупреждения, вам нужно обернуть его в функцию.
el.addEventListener("click", function() { alert("clicktrack"); }, false);
Как насчет:
<script type="text/javascript" language="javascript">
document.write("<div id=\"myDiv\">I am a div</div>");
el = document.getElementById("myDiv");
el.addEventListener("click", function() { alert("clicktrack"); }, false);
</script>