【发布时间】:2020-03-07 10:53:54
【问题描述】:
我写信是因为我需要解决这个问题。直到最近,代码运行良好,我已经使用了很长时间,但是昨天,当我测试页面时,一切都改变了。
这个想法是单击带有锚标记的图像,该标记会将用户重定向到另一个页面,并且在这样做时,应该会弹出一个确认对话框,询问用户是否需要。我没有更改代码中的任何内容,所以我不知道发生了什么。代码如下:
// **JavaScript**
function confPopUp() {
for (var i = 0; i < 6; i++) {
document.getElementsByClassName("redPic")[i].onclick = redConf;
}
}
function redConf() {
var conf = confirm(
"You're about to be redirected to our social media page. Do you accept?"
);
if (conf) {
return true;
} else {
return false;
}
}
window.onclick = confPopUp;
<!-- **HTML** //THERE ARE 5 MORE ELEMENTS WITH THE CLASS NAME "redPic". -->
<a href="https://www.madridsolutions.es" target="_blank"><img class="redPic" src="images/instagramLogo.png" alt="Instagram Logo"></a>
问题是我现在正在测试它,但它不能正常工作,前天它工作正常,只需单击一次,现在它可以双击。 非常感谢您的帮助,谢谢。
【问题讨论】:
-
发生的事情是您在窗口点击侦听器中添加点击侦听器。所以最初只有窗口监听点击。然后,当单击任意位置时,
onclick被设置在.redPic元素上。因此,现在当您单击图像时,将调用redConf函数。因此,您必须单击两次。 -
感谢您的宝贵时间,Zuurbier 先生。您的回答也很有帮助。
标签: javascript html events onclick