Using the JAWS Scripts For Youtube
Last Revised August, 2018
This Guide provides tips for using Youtube with JAWS For Windows and these scripts.
When the scripts are installed and Youtube is open and focused in a supported browser, this document can be
opened via a double press of JAWSKey+F1 (or Insert+F1).
Note that Youtube provides many keystrokes that do not require scripts, though they usually do require forms
mode, pass-key-through, or disabling of the virtual cursor. These scripts simplify using some native commands
while providing a few other shortcuts not provided by Youtube itself.
Table of Contents
These scripts require the following for correct operation with the Youtube web site:
- JAWS 17.0.1806 or greater. (JAWS versions prior to 17.0 do not support web site specific scripts.)
The original JAWS 17.0 release did not include the
GetElementXML() function that was added in the
JAWS 17.0.1806 release in April, 2016.
- A browser supported by JAWS 17.0 or later. At this writing, these are
Internet Explorer, Firefox, and Google Chrome.
These scripts will not work in Microsoft Edge at this time.
To install these scripts on a new system:
- Load JAWS if this has not already been done. This will require
administrative privileges on the computer.
- Run JAWS as the user for whom the scripts are to be installed.
This and the following steps must be performed for each user of the computer
who will be using JAWS with these scripts.
- Download and run, or run directly, the installer for these scripts; and follow the on-screen
directions. Be sure to install the scripts in the currently running
JAWS version if a JAWS version list is presented.
- To verify successful installation, type Ins+Q while
Youtube is in focus in a supported browser. Part of the JAWS spoken response should be a revision number. If
you do not hear a revision number, the scripts are not correctly loaded.
Note to users of the original Youtube scripts:
As of March, 2017, all Youtube script commands are key sequences rather than Ctrl+Shift combinations. This is because of several collisions between the original script commands and native browser keystrokes.
All of the original Ctrl+Shift commands are now changed to a left bracket ([) followed separately by the same letter used in the original command. For example, the original Ctrl+Shift+S command
to skip ads is now [ s.
The scripts provide the following commands:
- [ S
- Skip Ad. If a video ad is playing and a Skip button is present, this command will click it to make Youtube
start playing the actual video requested.
- [ Space
- Press the Play/Pause button if present. This works in both virtual cursor mode and forms mode.
- [ T
- Say Time. This command will speak the current time position in the playing video as well as the video's length.
If a video ad is playing, the times will relate to the ad rather than to the requested video.
Note: The current time position is not always kept up to date by Youtube itself but will be
updated if the video is paused and restarted or the play position is changed by the user.
Typing [ Space twice will force such an update.
- [ N and [ P
- Move to the next or previous page or video. This should work in playlists and
wherever a Next and Previous button can be found.
- [ m
- Mute or unmute the current video. See also the m native Youtube command below.
- [ V
- Move focus to the volume slider for the currently playing video. This also switches JAWS into forms mode and causes
a number of native Youtube keystrokes to become usable.
The following Youtube-native keystrokes work as indicated when JAWS is in forms mode or if the keystrokes are
passed through JAWS directly to Youtube, such as with the JAWS "pass next key through" command, Ins+3.
As noted in the below list, some Youtube keystrokes require focus to be on the video's volume slider.
This list applies at least to the HTML 5 video player and possibly also to
the Flash player.
- Space (slider focus required) or K
- Pause, resume, or play the current video.
- j or l
- Rewind or fast-forward the video by a few seconds.
- Digits 1 through 9 and 0 (slider focus required)
- Jump to a percentage through the video. 0 jumps to the beginning, 1 to 10% through,
2 to 20% through, etc., and 9 to 90% through.
- , (comma) or . (period)
- Slow down or speed up the video without changing its pitch. This amounts to simple compression or
expansion of the audio and video. Slowing down far enough may stop playback.
- Up or Down arrows (slider focus required)
- Turn up or down the volume of the video by increments of 5%.
Right and Left arrows, respectively, perform the same actions and also require focus to
be on the volume slider.
The volume usually defaults to 100%.
- Mute or unmute the sound of the video. Beware that the occasional video defaults to muted on starting,
though this seems rare.
- Home (slider focus required)
- Mute the audio. This is not a toggle like m.
- End (slider focus required)
- Unmute the audio and move the volume to 100%. This is not a toggle like m.
- Toggle between full screen and normal video size.
- / (slash)
- Move focus to the Youtube search box.
- ' (apostrophe)
- Pop open and move focus to the Find bar for about four seconds.
Issues shown in this section may be fixed in future script
revisions but are not addressed as of this writing.
Sometimes, [ V may announce the volume slider incorrectly. In this script author's
experience, this only occurs after a great number of videos, such as 50, have been played without a browser
As mentioned earlier, Youtube provides many keystrokes natively. However, most are blocked by JAWS' virtual
mode (true for other screen readers as well), making them inconvenient to use in some situations.
I wrote these scripts for the following reasons, not necessarily in order of precedence:
- Personal convenience (ok, that one was probably at the top).
- Potential usefulness to other JAWS users.
- A demonstration of the power in JAWS 17+ for scripting web sites in a browser-independent manner.
- A way to make more people aware of the keyboard support built into Youtube itself.
- In the words of a coworker and good friend, why not?
Here is the revision history of these scripts, most recent revision first:
- Revision 36, released August 13, 2018
- Another update to the Skip Ad finding code required by Youtube changes.
- This manual now contains the script revision history.
- Revision 35, released July 21, 2018
- The "Skip Ad" command is updated to recognize a revision in the Youtube Skip Ad button.
- Command m mutes or unmutes the current video and works outside of forms mode. The native Youtube m command requires forms mode or a pass-key-through operation (Ins+3).
- The installer is built with an older Nullsoft installer version, because the newer one previously used had caused some antivirus software to complain.
- The installer tries drives D and E along with C when looking for JAWS while unable to read the Windows registry.
- Revision 30, released September 2, 2017
- Fixed a problem with the previous installer, caused by a change in how the NSIS
SetRegView command works, that caused the
installer not to find any JAWS versions on 32-bit Windows.
- Failure to find any JAWS versions during installation results in a log display.
- Revision 29, released August 31, 2017
- Added JAWS 2018 support.
- Added the ability to edit the Command key by typing the current Command key (the left bracket ([) by default)
followed by JAWSKey+C.
- Revision 25, released March 3, 2017
- Important: All script commands, all of which were Ctrl+Shift with another key, are now the same key but preceded by a left bracket ([) in order to avoid collisions with various browser-specific native keystrokes.
For example, the command for skipping ads is now [ s instead of Ctrl+Shift+s.
- [ +Space (formerly Ctrl+Shift+Space) works on Play buttons when playing a playlist.
(I wrote this one in August and may have forgotten to release it.)
- [ +S (formerly Ctrl+Shift+S) should work more often for pressing the "Skip Ad" button. (Youtube changed some properties of this button and broke the original code.)
- Various user guide updates.
- Revision 17, released July 24, 2016
This is the first release of these scripts, including commands for the following:
- Skipping ads.
- Play/pause of a video.
- Announcing time position and length of a playing video.
- Jumping to next and previous videos or search results pages.
- Focusing the volume slider, which enables many native Youtube commands without interferance from JAWS.