Chrome 55的一个新特性: auxclick
2016-12-04 本文已影响104人
止念观息
对于在复杂的用户界面上工作的Web开发人员,有时候可能会想定义一种“不是点击的点击动作”。例如,如果用户使用鼠标的中间按钮点击链接,则可以合理地假设他们想打开一个新的选项卡。如果用户用中间键点击一个了元素,那么他极有可能是无意的,我们就可以忽略这个动作。
现阶段实现这种功能也是可以的,只不过有点麻烦,开发者需要检查MouseEvent的button属性,去判断触发点击的是哪个按键。但是目前为止貌似很少有开发者去判断这些,大部分人只是简单处理所有的点击事件。
从Chrome 55开始,出现了一种名为auxclick的新型MouseEvent事件,当用户用辅助键点击的时候(比如中间键),auxclick就会被触发。而开发者无需判断MouseEvent.button 属性。
使用方法如下:
function handleAuxClick(event) { // ...code to handle the auxiliary button click…. } document.querySelector('#my-link').addEventListener('auxclick', handleAuxClick);