This site will have limited functionality while we undergo maintenance to improve your experience. If an article doesn't solve your issue and you want to ask a question, we have our support community waiting to help you at @FirefoxSupport on Twitter and/r/firefox on Reddit.

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

Disabled, having trouble navigating content in Firefox

  • 3 replies
  • 0 have this problem
  • 19 views
  • Last reply by jehighley

more options

I have physical limitations and need to use middle mouse button to scroll.

However, in Firefox, middle mouse button to scroll is interrupted whenever the mouse hovers over a hyperlink or linked object -- and, fun fact, there are A LOT of links on the Internet, so this equates to a very janky and sub-optimum experience, in my personal use-case.

How can I make it so that the middle mouse button functionality is not hijacked by mouse-over context? I've already tried/disabled middle-mouse-button-click-to-open-link-in-new-tab.

I have physical limitations and need to use middle mouse button to scroll. However, in Firefox, middle mouse button to scroll is interrupted whenever the mouse hovers over a hyperlink or linked object -- and, fun fact, there are A LOT of links on the Internet, so this equates to a very janky and sub-optimum experience, in my personal use-case. How can I make it so that the middle mouse button functionality is not hijacked by mouse-over context? I've already tried/disabled middle-mouse-button-click-to-open-link-in-new-tab.

Chosen solution

...I was able to find a scroll solution using AutoHotKey that allows scrolling from anywhere in the page, even while hovering over images/links within Firefox. In the example below I have it assigned to the + key on the number pad, as after some experimentation that seems to work for me the best, but this could easily be modified to any other key, or the middle mouse button instead:

NumpadAdd::
Loop
{
    If !GetKeyState("NumpadAdd","P")
        break
    MouseGetPos, ,ay
    Sleep, 100
    MouseGetPos,,by
    Send % (ay<by ? "{WheelDown " : "{WheelUp ") . round(Abs(ay-by)/15) . "}"
}
Return
Read this answer in context 👍 0

All Replies (3)

more options

Do you mean scrolling with the mouse wheel or initiating the Firefox auto-scroll feature by pressing the scroll wheel?

In case of the latter you need to make sure that the mouse pointer isn't on an active part of the page when you click what can be difficult if there are a lot of element/images that accept click events. Once you have entered auto-scroll, you shouldn't leave it by moving the mouse up/down until you click a mouse button or press ESC.

In case of the former, you can try to move the mouse pointer to the scroll bar area to avoid scrolling frames, although Firefox should continue scrolling the page once you reach the end of that frame.

more options

Thank you for the reply.

I am referring to initiating auto-scroll by pressing middle-click.

'...you need to make sure that the mouse pointer isn't on an active part of the page when you click what can be difficult if there are a lot of element/images that accept click events.

Yes, I am aware of this and you are describing the problem I'm trying to find a solution for: I want to have access to auto scroll at all times, regardless where the pointer is, or what is going on under it.

more options

Chosen Solution

...I was able to find a scroll solution using AutoHotKey that allows scrolling from anywhere in the page, even while hovering over images/links within Firefox. In the example below I have it assigned to the + key on the number pad, as after some experimentation that seems to work for me the best, but this could easily be modified to any other key, or the middle mouse button instead:

NumpadAdd::
Loop
{
    If !GetKeyState("NumpadAdd","P")
        break
    MouseGetPos, ,ay
    Sleep, 100
    MouseGetPos,,by
    Send % (ay<by ? "{WheelDown " : "{WheelUp ") . round(Abs(ay-by)/15) . "}"
}
Return

Modified by cor-el