因此,Chrome和Firefox似乎推出了onAuxClick(从Chrome 55开始的Chrome)。这应该像onClick但非主要按钮(即中间和左键)。
我有很多HTML代码,如下所示:
<div onClick="someFunc(event);">Click here with either left or middle click</div>
(当然,SomeFunc有一些代码会略有不同,具体取决于它是中间还是左键)。
onAuxClick的添加破坏了所有这些代码,因为中间点击不再触发onClick功能。感谢您非常讨厌,Chrome和Firefox!
无论如何,有什么我可以替换onClick仍然会触发这两个事件?类似的东西:
<div onAnyClick="someFunc(event);">Click here with either left or middle click</div>
现在解决方案是在任何地方调用重复的函数,如下所示:
<div onClick="someFunc(event);" onAuxClick="someFunc(event);">Click here with either left or middle click</div>
感谢。
答案 0 :(得分:1)
mozilla已经有了一个例子。检查这个小提琴:
// Source: https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onauxclick
var button = document.querySelector('button');
var html = document.querySelector('html');
function random(number) {
return Math.floor(Math.random() * number);
}
button.onclick = function() {
var rndCol = 'rgb(' + random(255) + ',' + random(255) + ',' + random(255) + ')';
button.style.backgroundColor = rndCol;
};
button.onauxclick = function() {
var rndCol = 'rgb(' + random(255) + ',' + random(255) + ',' + random(255) + ')';
button.style.color = rndCol;
}
<button>
Click Me!
</button>