0
或从一开始编号1
。由于这个问题涉及到Firefox,我将遵循Mozilla在这里的编号方案。
我一直在处理一个只在Firefox中出现的问题,即鼠标按钮4(后退)和5(前进)似乎向Firefox显示为按钮2单击(中间按钮单击)事件。按下任一按钮4或5会导致出现带有上箭头和下箭头的圆形“自动滚动”图标:
我使用此鼠标事件测试页面进行了一些调试。 Chrome和Firefox之间的结果不同。它看起来“which”JS事件属性将其编号为4
和5
,而“button”属性将其编号为3
和4
。无论如何,Google Chrome正确地将它们解释为“浏览器后退”和“浏览器前进”按钮,而Firefox则没有。
Chrome:
鼠标按钮“
4
”(返回)mousedown which=4 button=3 buttons=8 mouseup which=4 button=3 buttons=0
鼠标按键 "
5
"(前进)
mousedown which=5 button=4 buttons=16 mouseup which=5 button=4 buttons=0
鼠标按键 "
2
" (中键)
mousedown which=2 button=1 buttons=4
mouseup which=2 button=1 buttons=0
Firefox:
鼠标按键 "
4
"(后退)
mousedown which=2 button=1 buttons=8
mouseup which=2 button=1 buttons=0
鼠标按键 "5
"(前进)
mousedown which=2 button=1 buttons=16
mouseup which=2 button=1 buttons=0
鼠标按键 "2
" (中键点击)
mousedown which=2 button=1 buttons=4
mouseup which=2 button=1 buttons=0
正如该页面所述,并非所有浏览器都能正常工作。它还指出:
但是,在某些浏览器中,无法禁用默认值,因此可能会发生各种奇怪的副作用。
在Firefox中,我注意到使用这三个按钮之一点击时,会启动一个带有javascript:void(null)
的新标签页。从该页面的源代码可以看到,这与链接的URL属性(href="javascript:void(null)"
)相同。因此,这种行为与中间按钮单击事件一致,通常会在新标签页中打开该URL。
是否有可能在Firefox中使“浏览器后退”和“浏览器前进”这些按钮正常工作?