Javascript 函数在不等待事件侦听器的情况下运行
我对非常基本的js函数有一个问题。我环顾四周,发现主题非常相似,但对我没有帮助 所以我想在单击div之后运行一个函数。我的第一次尝试将导致函数在不单击它的情况下运行: 第一次尝试Javascript 函数在不等待事件侦听器的情况下运行,javascript,Javascript,我对非常基本的js函数有一个问题。我环顾四周,发现主题非常相似,但对我没有帮助 所以我想在单击div之后运行一个函数。我的第一次尝试将导致函数在不单击它的情况下运行: 第一次尝试 document.getElementsByClassName('button').addEventListener(“单击”,幻灯片()); 函数幻灯片(){ x=document.getElementsByClassName('button')[0]; x、 innerHTML=“test123”; } 。按钮{
document.getElementsByClassName('button').addEventListener(“单击”,幻灯片());
函数幻灯片(){
x=document.getElementsByClassName('button')[0];
x、 innerHTML=“test123”;
}
。按钮{
高度:60px;
背景色:暗色;
}
您必须解决代码中的问题:
addEventListener
中执行该函数getElementsByClassName
返回集合。因此,在使用getElementsByClassName
时,必须使用适当的索引document.getElementsByClassName('button')[0]。addEventListener(“单击”,幻灯片);
函数幻灯片(){
x=document.getElementsByClassName('button')[0];
x、 innerHTML=“test123”;
}
。按钮{
高度:60px;
背景色:暗色;
}
由于您有一个id,因此最好使用它。GetElementsByCassName返回一个集合,因此您必须对其编制索引[0]
,以便向集合的第一个元素添加侦听器。这就是为什么第一个不起作用,这就是为什么第二个不起作用。第二:一定要检查你的网络控制台是否有错误。不要回答明显的、常见的重复问题。相反,投票以重复的方式结束。@T.J.Crowder除此之外,答案并不能解释getElementsByClassName
返回的内容。@Ele:确实如此。:-)它至少用“索引”来暗示它,但是…@Mamun-我上面的第一条评论应该以“请”开头。很抱歉。