【发布时间】:2020-12-15 15:02:02
【问题描述】:
好的,我是这里的超级新手,所以请记住这一点。我在 bskt_messages 中保存的 li 项目中有几条消息。它是一个 HTML 集合。我正在尝试添加一个单击事件侦听器,但是每次运行该页面时,它都会自动调用 return_value 函数。我使用了这个网站上类似帖子的代码,但似乎没有区别。我在这里做错了什么?
$(document).ready(function() {
var bskt_messages = document.querySelectorAll('.message_item');
for (let i = 0; i < bskt_messages.length; i++) {
bskt_messages[i].style.cursor = 'pointer';
bskt_messages[i].addEventListener("click", return_value(i));
};
});
function return_value(i) {
console.log("clicked " + i);
}
【问题讨论】:
-
那是因为当文档准备好时你正在执行这个函数。如果你想将
return_value函数设置为监听器,你应该使用它自己:bskt_messages[i].addEventListener("click", return_value);
标签: javascript