作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这里有一个相当具体的问题。我有以下代码:
$(document).ready(function() {
var cartButArr = document.querySelectorAll(".toCart")
for(i=0; i<cartButArr.length; i++){
cartButArr[i].onclick = cartAdd();
}
});
然后,被调用的函数:
function cartAdd() {
alert("yo!");
}
但是,无论出于何种原因,这个 for 循环都无法正常工作。当我启动该页面时,我会连续收到六个警报,而不是每次单击时都会调用警报。我做错了什么?
提前致谢!
最佳答案
onclick 事件应附加到该事件触发时调用的函数
您所做的实际上是调用函数 cartAdd 并将其值分配给 onclick,这不会将其结果识别为函数
更换线路
cartButArr[i].onclick = cartAdd();
用这个
cartButArr[i].onclick = cartAdd;
关于javascript - jQuery:为什么这个 For 循环不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26569605/
我是一名优秀的程序员,十分优秀!