<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="StyleSheet" href="style.css" type="text/css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="copyright" content="Copyright (c) IBM Corporation and others 2007. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
<title>Key Reference (basic) : Accessibility Internet Browser for Multimedia Help</title>
</head>

<body>
<p class="navigation">
<a href="index.html">Back to Index</a>
</p>
<h1>Basic Key Commands</h1>
<p class="h1">
</p>
<div class="h1">
<ul>
 <li><a href="#file">Browser Control</a></li>
 <li><a href="#navigate">Navigate functions</a></li>
 <li><a href="#multimedia">Multimedia Control</a></li>
</ul>
</div>

<a name="file"/>
<h2>Browser Control</h2>
<dl class="h2">
  <dt>Control + O</dt><dd>Open new page. A dialog will be shown to input the URL for the new page.</dd>
  <dt>F5</dt><dd>Reload the page.</dd>
  <dt>Alt + Right Arrow</dt><dd>Move forward in the browser history.</dd>
  <dt>Alt + Left Arrow</dt><dd>Move backward in the browser history.</dd>
  <dt>Alt + D</dt><dd>Focus on the address input field.</dd>
  <dt>S</dt><dd>Announce the current status.</dd>
</dl>

<a name="navigate"/>
<h2>Navigate functions</h2>
<dl class="h2">
  <dt>Down Arrow</dt><dd>Select next item and read it.</dd>
  <dt>Up Arrow</dt><dd>Select previout item and read it.</dd>
  <dt>Alt + Down Arrow</dt><dd>Read all items from current selected item to last item.</dd>
  
  <dt>Return key or Space key</dt><dd>Click on the selected item, select a checkbox or radio button 
  , open a dialog to edit text input, or select a combobox.
  </dd>
  
  <dt>Ctrl</dt><dd>Stop speech.</dd>

  <dt>F4</dt><dd>Perform analyze current content. Please try this key if you can't access Flash content 
  or can't control multimedia content. </dd>
  <dt>Control + Alt + A</dt><dd>Toggle the audio description function on or off.</dd>
</dl>

<dl class="h2">
  <dt>Home or Control + Home</dt><dd>Jump to the top of a page.</dd>
  <dt>H or Right Arrow</dt><dd>Go to the next heading.</dd>
  <dt>Tab</dt><dd>Go to the next link.</dd>
  <dt>N</dt><dd>Go to the next non-link text item.</dd>
</dl>

<a name="multimedia"/>
<h2>Multimedia Control</h2>
<dl class="h2">
  <dt>Control + P</dt><dd>Play video and audio.</dd>
  <dt>Control + S</dt><dd>Stop video and audio.</dd>
  <dt>Pause</dt><dd>Pause video and audio.</dd>
  
  <dt>Control + M</dt><dd>Mute volume.</dd>
  <dt>Control + J</dt><dd>Decrease volume.</dd>
  <dt>Control + K</dt><dd>Increase volume.</dd>
</dl>

<p class="navigation">
<a href="index.html">Back to Index</a>
</p>
</body>
</html>
