gpt4 book ai didi

javascript - 在函数内部添加变量

转载 作者:行者123 更新时间:2023-11-28 16:03:18 25 4
gpt4 key购买 nike

我有以下代码

var elements = parent.document.getElementsByTagName('a');
for(var i = 0, len = elements.length; i < len; i++) {
elements[i].onclick = function () {
return confirm_exit('".$_SESSION['SES_abr_langue']."');
}
}

我需要将 onclick 附加到现有的 onclick 事件(如果存在)。

当我在 function() 中添加 elements[i].onclick 时,它只是“硬编码”它。这意味着它实际上放置 elements[i].onclick 而不是 onclick 的值。

谢谢!

最佳答案

尝试使用addEventListener:

function onLinkClick() {
return confirm_exit('".$_SESSION['SES_abr_langue']."');
}
var elements = parent.document.getElementsByTagName('a');
for(var i = 0, len = elements.length; i < len; i++) {
if (elements[i].addEventListener) {
elements[i].addEventListener("click", onLinkClick, false);
} else if (elements[i].attachEvent) {// for < IE9
elements[i].attachEvent("onclick", onLinkClick);
}
}

编辑

如果您想控制原始的 onclick,请使用以下内容:

function createLinkEvent(orgOnClick) {
return function(e) {
if (!confirm_exit('".$_SESSION['SES_abr_langue']."')) {
return false;
}
if (orgOnClick) {
return orgOnClick(e);
}
return true;
};
}


}
var elements = parent.document.getElementsByTagName('a');
for(var i = 0, len = elements.length; i < len; i++) {
elements[i].onclick = createLinkEvent(elements[i].onclick);
}

关于javascript - 在函数内部添加变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16175042/

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