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>