diff --git a/accessible/base/nsAccessibilityService.cpp b/accessible/base/nsAccessibilityService.cpp index 9503bd7aab14..f9bec41d2d32 100644 --- a/accessible/base/nsAccessibilityService.cpp +++ b/accessible/base/nsAccessibilityService.cpp @@ -568,8 +568,12 @@ void nsAccessibilityService::NotifyOfAnchorJumpTo(nsIContent* aTargetNode) { const Accessible* focusedAcc = FocusedAccessible(); if (focusedAcc && (focusedAcc == document || focusedAcc->IsNonInteractive())) { - LocalAccessible* targetAcc = document->GetAccessible(aTargetNode); - if (targetAcc) { + LocalAccessible* targetAcc = + document->GetAccessibleOrContainer(aTargetNode); + // If targetAcc is the document, this isn't useful. It's possible we just + // haven't built the initial tree yet. Regardless, we don't want to fire an + // event for the document here. + if (targetAcc && !targetAcc->IsDoc()) { nsEventShell::FireEvent(nsIAccessibleEvent::EVENT_SCROLLING_START, targetAcc); document->SetAnchorJump(nullptr); diff --git a/accessible/tests/browser/text/browser_highlights.js b/accessible/tests/browser/text/browser_highlights.js index 075db44b601a..dbd351d5e04f 100644 --- a/accessible/tests/browser/text/browser_highlights.js +++ b/accessible/tests/browser/text/browser_highlights.js @@ -12,7 +12,7 @@ const boldAttrs = { "font-weight": "700" }; const fragmentAttrs = { mark: "true" }; const snippet = `
The first phrase.
-The second phrase.
+The second phrase.
`; /**