Overview
When browsing the web or reading documents, NVDA automatically enters Browse Mode to provide a virtualized view of the content. This allows you to navigate using cursor keys and quick navigation commands, rather than tabbing through every element.Browse Mode is also known as “Virtual Buffer” or “Virtual Cursor” mode. It creates a text representation of a document that can be navigated like a text file.
Browse Mode vs Focus Mode
NVDA switches between two modes when interacting with documents:Browse Mode
Navigate documents using cursor keys and quick navigation. Single letter commands jump to elements. Best for reading web pages and documents.
Focus Mode
Direct interaction with form controls. All keys pass through to the application. Best for filling out forms and text editing.
Automatic Mode Switching
NVDA intelligently switches between modes:- Entering Focus Mode: When you focus on editable text fields, combo boxes, or other interactive controls
- Entering Browse Mode: When leaving form controls to navigate document content
- Audio Indication: Plays different sounds (or speaks “Focus mode” / “Browse mode”) when switching
Manual Mode Switching
- Press
NVDA+Spaceto manually toggle between Browse and Focus mode - Useful when automatic switching doesn’t behave as expected
- Some controls require manual switching to access all features
When Focus Mode Activates Automatically
When Focus Mode Activates Automatically
Focus mode automatically activates for:
- Editable text fields (input, textarea)
- Combo boxes and select controls
- Menu items and menu bars
- Tree views and expandable elements
- Embedded applications and applets
- Toolbars and tool palettes
- Any element with
contenteditableorEDITABLEstate - ARIA widgets like grids, treegrids, and sliders
- Certain focusable list items in interactive lists
Quick Navigation
Browse Mode’s most powerful feature is single-letter navigation, allowing instant jumping to element types.Single Letter Navigation
Press a single letter to jump to the next element of that type. Add
Shift to jump backward.| Key | Element Type | Description |
|---|---|---|
H | Heading | Jump to next heading (any level) |
1-6 | Heading Level | Jump to heading of specific level |
L | List | Jump to next list |
I | List Item | Jump to next list item |
T | Table | Jump to next table |
K | Link | Jump to next link |
V | Visited Link | Jump to links you’ve visited |
U | Unvisited Link | Jump to links not yet visited |
F | Form Field | Jump to form input, button, etc. |
E | Edit Field | Jump to text input fields |
B | Button | Jump to buttons |
X | Checkbox | Jump to checkboxes |
C | Combo Box | Jump to dropdown menus |
R | Radio Button | Jump to radio buttons |
Q | Block Quote | Jump to quoted text |
D | Landmark | Jump to ARIA landmarks |
M | Frame | Jump to iframes |
G | Graphic | Jump to images |
A | Annotation | Jump to comments/annotations |
O | Embedded Object | Jump to embedded objects |
S | Separator | Jump to horizontal separators |
N | Non-linked Text | Skip blocks of links |
Disabling Single Letter Navigation
PressNVDA+Shift+Space to toggle single letter navigation on/off. When off, letter keys pass through to the application (useful for web apps with keyboard shortcuts).
Elements List
The Elements List provides a searchable, filterable view of document elements.Opening Elements List
PressNVDA+F7 to open the Elements List dialog.
Available Element Types
Links Tab
Links Tab
Lists all links in the document:
- Filter by link text
- See visited vs unvisited links
- Activate links without moving cursor
Headings Tab
Headings Tab
Shows document structure:
- Hierarchical heading tree
- Filter by heading text
- Jump to any heading instantly
- Great for understanding page structure
Form Fields Tab
Form Fields Tab
Lists all interactive elements:
- Input fields
- Buttons
- Checkboxes and radio buttons
- Combo boxes
- Quickly navigate to any form control
Landmarks Tab
Landmarks Tab
Shows ARIA landmarks:
- Navigation regions
- Main content areas
- Search regions
- Complementary sections
- Filter by landmark type
Using Elements List
- Type to filter elements by name
- Use arrow keys to navigate the list
- Press
Enterto jump to selected element - Press
Spaceto activate links/buttons - Press
Escapeto close without moving
The Elements List is particularly useful on long, complex pages where visual scanning would normally be used to find specific elements.
Document Navigation
Cursor Movement
In Browse Mode, cursor keys navigate through the virtual representation:- Arrow Keys: Move by character, line, word (with Ctrl)
- Page Up/Down: Move by screenful
- Home/End: Jump to start/end of line
- Ctrl+Home/End: Jump to start/end of document
Reading Commands
| Command | Action |
|---|---|
NVDA+Down Arrow | Say all (read from current position) |
NVDA+Up Arrow | Read current line |
NVDA+Numpad5 | Read current character |
NVDA+Tab | Read next focusable item |
NVDA+Shift+Tab | Read previous focusable item |
Navigation by Element Type
Beyond single-letter navigation, you can use:T/Shift+T: Next/previous tableK/Shift+K: Next/previous linkN/Shift+N: Skip/go back to non-linked text blocksF/Shift+F: Next/previous form fieldH/Shift+H: Next/previous heading
Table Navigation
Browse Mode provides special commands for navigating tables:| Command | Action |
|---|---|
Ctrl+Alt+Arrow Keys | Move between table cells |
Ctrl+Alt+Home | Jump to first cell |
Ctrl+Alt+End | Jump to last cell |
Ctrl+Alt+Page Down | Jump to next column |
Ctrl+Alt+Page Up | Jump to previous column |
- NVDA announces row and column headers
- Reports cell coordinates (row 3, column 2)
- Indicates spanning cells
Table navigation works best when tables have proper semantic markup with
<th> headers and scope attributes.Find in Document
Quick Find
PressNVDA+Control+F to search for text in the virtual buffer:
- Type search text
- Press Enter to find next
- Use
NVDA+F3to find next occurrence - Use
NVDA+Shift+F3to find previous
Case Sensitive Search
Check the “Case sensitive” option in the Find dialog for exact matching.Text Style Navigation
Browse Mode can announce and navigate by text formatting:- Bold, italic, underline
- Font changes
- Color changes
- Highlighting
- Text size changes
Style Change Announcement
Configure in NVDA Settings → Document Formatting:- Report font name
- Report font size
- Report colors
- Report emphasis (bold/italic)
- Report style changes
Virtual Buffer Technical Details
How Browse Mode Works
Browse Mode creates a text representation (virtual buffer) of structured documents:- Document Analysis: NVDA traverses the document object model (DOM)
- Buffer Creation: Builds a flat text representation with semantic information
- Element Mapping: Maintains bidirectional mapping between buffer positions and document objects
- Quick Navigation Indexing: Builds indexes for each element type
- Event Handling: Updates buffer when document changes
QuickNav Items
Each navigable element is represented as aQuickNavItem object containing:
- Item Type: Element category (link, heading, table, etc.)
- Label: Text representation for Elements List
- Position: Location in virtual buffer
- Document Reference: Pointer to actual DOM element
BrowseModeTreeInterceptor
The core class implementing Browse Mode functionality:- Intercepts keyboard input
- Manages focus vs browse mode switching
- Handles single letter navigation
- Implements Elements List
- Synchronizes with document changes
source/browseMode.py
Browse Mode Settings
Configurable Options
NVDA Settings → Browse Mode:Page Layout
Page Layout
- Use screen layout: Preserve visual positioning of elements
- Maximum characters per line: Control line wrapping
- Maximum lines per page: Control page down/up distance
Automatic Mode Switching
Automatic Mode Switching
- Automatic focus mode for focus changes: Switch on focus
- Automatic focus mode for caret movement: Switch when navigating into forms
- Audio indication of focus/browse modes: Sound or speech
Navigation
Navigation
Applications Supporting Browse Mode
Browse Mode works with:- Web Browsers: Chrome, Firefox, Edge, Internet Explorer
- Microsoft Office: Word, Outlook (reading pane), PowerPoint (reading view)
- PDF Readers: Adobe Reader, Foxit Reader, Edge PDF viewer
- Email Clients: Outlook, Thunderbird
- Help Systems: CHM files, Windows Help
- Other: Any application exposing accessible document structure
Some single-page web applications (SPAs) may not work optimally with Browse Mode due to dynamic content updates. NVDA includes workarounds for popular frameworks.
Advanced Techniques
Embedded Objects
When encountering embedded objects (Flash, Java applets, iframes):- Press
NVDA+Control+Enterto interact with embedded object - Browse mode temporarily disabled within object
- Press
NVDA+Control+Spaceto return to Browse Mode
Pass-Through Keys
Configure specific keys to always pass through to applications:- NVDA Settings → Browse Mode → Pass-through keys
- Add key combinations that should skip Browse Mode
- Useful for web applications with keyboard shortcuts
Screen Layout Mode
When enabled, Browse Mode attempts to preserve:- Spatial positioning of elements
- Column layouts
- Visual grouping
- Relative indentation
Troubleshooting
Browse Mode Not Activating
Browse Mode Not Activating
- Ensure you’re in a supported application
- Check if document loaded completely
- Try refreshing the page/document
- Verify Browse Mode isn’t disabled for this application
Focus Mode Won't Deactivate
Focus Mode Won't Deactivate
- Press
NVDA+Spaceto manually switch - Some controls keep focus mode active intentionally
- Check for modal dialogs that trap focus
Single Letter Navigation Not Working
Single Letter Navigation Not Working
Elements List Empty
Elements List Empty
- Wait for document to fully load
- Some elements may use non-standard markup
- Try refreshing the virtual buffer (
NVDA+F5)
Related Topics
- Speech Synthesis - Audio output configuration
- Braille Displays - Tactile display support
- Vision Enhancements - Visual highlighting
- Add-ons - Extend Browse Mode functionality
