gpt4 book ai didi

javascript 事件监听器问题

转载 作者:行者123 更新时间:2023-11-28 14:04:37 25 4
gpt4 key购买 nike

我有一个脚本,我尝试将事件监听器添加到链接,并且它会监视用户何时单击该链接。当链接被点击时,它会调用函数“hi”。我遇到了麻烦,因为即使未单击链接,函数“hi”也会被调用。在 IE 和 FF 上结果相同。这是我的代码也许有人可以提供帮助:

function hi(id) {   
var xmlhttp = new XMLHttpRequest();
urlwat = "wat.php?id="+id;
xmlhttp.open("POST",urlwat,true);
xmlhttp.send(null);
}

function wat1() {
object1 = document.getElementById("watlol");
try {
object1.attachEvent("click",hi(9));
}
catch(e) {
object1.addEventListener("click",hi(9),false);
}
}
window.onload = wat1;

最佳答案

您正在 AttachEvent 和 addEventListener 调用中调用 hi 函数本身。将其更改为:

function wat1() {
object1 = document.getElementById("watlol");
try {
object1.attachEvent("click", function() { hi(9); });
}
catch(e) {
object1.addEventListener("click",function() { hi(9); },false);
}
}

参数需要一个函数的引用,而传递它hi(9)就是传递调用函数hi<的结果

关于javascript 事件监听器问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2338300/

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