背景信息:我正在尝试为移动设备实施导航侧边栏。在这样做时,我在我的html中的一个图标中添加了一个touchstart事件,这样当按下它时会触发一个切换侧边栏的功能。
问题:出于某种莫名其妙的原因,在加载页面时会触发事件!
代码:
$(document).ready( function() {
var el = document.getElementById("bodyID").getElementsByClassName("fa-navicon");
el[0].addEventListener("touchstart", alert("Hello"),false);
} );
为了测试点火是否是我的javascript中的其他内容,我将其全部废弃并仅留下显示的代码。这是我在测试html页面上运行的唯一的javascript(除了scrollTop插件和jQuery核心)。我的图标也没有附加其他事件。
我觉得我以错误的方式附加事件 - 但我似乎无法找到解决方案。
答案 0 :(得分:1)
您应该传入一个函数作为addEventListener的第二个参数:
$(document).ready(function() {
var el = document.getElementById("bodyID").getElementsByClassName("fa-navicon");
el[0].addEventListener("touchstart", function() { alert("Hello") }, false);
});