gpt4 book ai didi

javascript - Chrome "onclick"事件问题

转载 作者:行者123 更新时间:2023-11-28 13:57:30 24 4
gpt4 key购买 nike

好吧,我正在构建一个应用程序(适用于 Chrome(*不是扩展)),并且页面上有一堆重复的元素。所以我决定使用循环动态构建这些元素,如下所示:

for(var i = 1; i <= 64; i++){
var elem = document.createElement('div');
elem.id = "element"+i;
elem.onclick = "doSomething()"
$("parentElement").appendChild(elem);
}

当它尝试将我的函数附加到 onclick 事件时,就会出现问题。当我查看该元素时,它没有 onclick 属性...即使当我单步执行时,我也可以到达该行:

elem.onclick = "doSomething()"

然后我再次迈出一步,什么也没有......到目前为止,我已经尝试过带引号和不带引号以及 .onclick 和 .onClick ...

提前谢谢您!

最佳答案

您应该始终传递函数本身,而不是任何类型的字符串。

elem.onclick = doSomething;

这会将 doSomething 设置为点击处理程序。

  • 使用字符串将在内部调用 eval,这很慢并且可能不安全(后者不适用于此处)。
  • 直接传递函数更加直接。
  • 仅当您通过 HTML 设置 onclick 时才需要字符串。

关于javascript - Chrome "onclick"事件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7248716/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com