我有一些组件在 windows.onclick 中执行某些操作:
window.onclick = () => dosomething();
问题是如果组件存在不止一次,那么它就会相互覆盖。
那么解决方案是什么?我怎样才能做类似的事情
window.onclick += () => dosomething();
最佳答案
on...
访问器函数只能分配一个值。
虽然您可以采取变通办法,但最好的选择是改用 addEventListener
。
addEventListener("click", () => dosomething());
addEventListener("click", () => dosomethingelse());
如果你真的想解决(并且讨厌),那么你可以这样做:
window.onclick = () => dosomething();
window.onclick = (function () {
const old = window.onclick;
return (e) => {
old(e);
dosomethingelse();
};
})();
…将旧函数复制到新变量,然后创建一个调用这两个函数的新函数。
关于javascript - 如何将函数连接到 windows.onclick?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55343225/