How to get Mouse buttons 4 / 5 (Browser back / Browser forward) working in Firefox?

Viewed 15852

First, I need to say that I'm aware there is some confusion as to what button numbering scheme convention is used for these "Browser back" and "Browser forward" mouse buttons depending on whether you use numbering starting from zero 0 or one 1. Since this question is about Firefox, I'll go by Mozilla's numbering scheme here.

I've been struggling with an issue seen only in Firefox where Mouse buttons 4 (back) and 5 (forward) appear to Firefox as if they were a button 2 click (Middle button click) event. Pressing either button 4 or 5 results in the circular "autoscrolling" icon with Up and Down arrows appearing:

Firefox autoscroll icon

I've done some debugging using this Mouse Event Test Page. Results are different between Chrome and Firefox. It appears that the "which" JS event attribute numbers these as 4 and 5, while the button attribute numbers them as 3 and 4. Regardless, Google Chrome interprets them as "Browser back" and "Browser Forward" buttons correctly, while Firefox does not.

  • Chrome:

    • Mouse Button "4" (back)

      mousedown   which=4 button=3 buttons=8
      mouseup     which=4 button=3 buttons=0
      
    • Mouse Button "5" (forward)

      mousedown   which=5 button=4 buttons=16
      mouseup     which=5 button=4 buttons=0
      
    • Mouse Button "2" (middle click)

      mousedown   which=2 button=1 buttons=4
      mouseup     which=2 button=1 buttons=0
      
  • Firefox:

    • Mouse Button "4" (back)

      mousedown   which=2 button=1 buttons=8
      mouseup     which=2 button=1 buttons=0
      
    • Mouse Button "5" (forward)

      mousedown   which=2 button=1 buttons=16
      mouseup     which=2 button=1 buttons=0
      
    • Mouse Button "2" (middle click)

      mousedown   which=2 button=1 buttons=4
      mouseup     which=2 button=1 buttons=0
      

As the page says, not all browsers work correctly. It also states:

However, in some browsers, the defaults cannot be disabled, so various strange side effects may occur.

In Firefox, I notice clicking with all three of these buttons launches a new tab with javascript:void(null). This is the same as the link's URL attribute (href="javascript:void(null)"), as we can see from that page's source code. So this behavior is consistent with a Middle Button Click event, which usually will launch a new tab with that URL.

Is it possible to get these buttons for "Browser Back" and "Browser Forward" working properly in Firefox?

5 Answers

I can recommend the SensibleSideButtons project. It’s easy to install, and it will fix those mouse buttons in many other programs, too.

GOOD NEWS: Bug Fixed in FF 92

The bug is fixed and the fix will be included in Firefox version 92 which will be released in early September 2021.

In the current Nightly Build (version 92) it is already working and you can use the Mouse Buttons 4 and 5 as expected for browser navigation back and forward.
I tested it with MacOS and an ordinary Dell mouse.


UPDATE (September 7, 2021)

Firefox 92 was released today as described earlier and the mouse buttons 4 and 5 work like a charm
Case closed.

I had the same issue.

System Information

  • macOS 10.15.5
  • Firefox 83.0
  • Logitech MX Master 2S Wireless Mouse

Steps to Reproduce

  • Open Firefox.
  • Navigate to page.
  • Click back, click forward.

Resolution

  • Install Logitech Options for macOS.
  • Open application.
  • Allow application to control your computer: System Preferences > Security & Privacy > Accessibility > Check Logi Options and Logi Options Daemon

Had the same issue with a Logitech MX Master 3 / MacOS 10.15.7 / Firefox 81.0.2 (back/fwd buttons suddenly stopped working for no discernable reason). A NVRAM / PRAM reset fixed it for me!

it's not vendor specific issue. Any multi button mouse might be affected by that.
Solution: karabiner-elements. Installing instructions on site. Otherwise for brew users as simple as:

brew install karabiner-elements

Open karabiner-elements and give it all permissions it needs.
In the program interface itself navigate to devices and add a mark on the thick box next to your mouse device. Go to "Complex Modifications", then click on "Rules" -> "Add rule" -> "Import more rules from Internet".
In the newly opened browser window search for "Change mouse buttons (rev 2)" and press the big blue "Import button". Upon successful import, make sure to enable the combination that suits you most.

For Logitech MX master (the original one where down side button is back and upper side button is forth) the profile to enable is "Change button4,5 to back forward".

As extra you get the nearly endless combinations and remaps Karabiner can provide

Related