diff --git a/css/navigation.css b/css/navigation.css
new file mode 100644
index 0000000..db8a758
--- /dev/null
+++ b/css/navigation.css
@@ -0,0 +1,72 @@
+body {
+ min-width: 836px;
+}
+#video {
+ min-width: 455px;
+ padding: 0;
+ margin: 0;
+}
+#controls {
+ margin-top:5px;
+}
+#button {
+ display: inline;
+}
+#play {
+ background:url(../images/buttons.png) no-repeat top left;
+ border:none;
+ height: 30px;
+ width: 30px;
+ padding: 5px;
+ float: left;
+ display: inline-block;
+}
+#positionview {
+ float: left;
+ width: 80%;
+ display: inline;
+}
+#transportbar {
+ height: 15px;
+ width: 100%;
+ border: 2px solid black;
+}
+#position {
+ background: #D7BC28;
+ height: 15px;
+ width: 0px;
+ display: block;
+}
+#segments {
+ width: 100%;
+ margin: 0;
+ padding: 0;
+ border: 2px solid;
+ border-top: none;
+ position: relative;
+ background: none;
+ height: 10px;
+ list-style-type: none;
+}
+.segment {
+ border-right: 1px solid;
+ background: none;
+ height: 10px;
+ float: left;
+ cursor: pointer;
+ position: absolute;
+}
+.selector {
+ width: 100%;
+ height: 100%;
+}
+#time {
+ position: relative;
+ float: right;
+}
+#keys {
+ list-style-type: none;
+}
+#keys span {
+ text-transform: uppercase;
+}
diff --git a/images/0.gif b/images/0.gif
new file mode 100644
index 0000000..35d42e8
Binary files /dev/null and b/images/0.gif differ
diff --git a/images/buttons.png b/images/buttons.png
new file mode 100644
index 0000000..07d069f
Binary files /dev/null and b/images/buttons.png differ
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..c137f70
--- /dev/null
+++ b/index.html
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
HTML5 video accessibility and the WebVTT file format
+
+
+
+
+ - space = play / pause toggle
+ - enter = navigate to chapter
+ - tab = navigate chapters
+ - ctl-alt-downarrow = navigate text elements
+
+
+
+
Navigation to specific time points.
+
+ Click on link to navigate to video fragment. Press space to toggle video play/pause.
+
+
+
+
+
+
diff --git a/js/navigation.js b/js/navigation.js
new file mode 100644
index 0000000..61ceff2
--- /dev/null
+++ b/js/navigation.js
@@ -0,0 +1,247 @@
+var video, track;
+var cues = [];
+var xhr;
+
+// get video element, track, and duration element
+video = document.getElementsByTagName('video')[0];
+track = video.querySelectorAll('track')[0];
+duration = document.getElementById('duration');
+
+// display duration and chapters once video is loaded
+video.addEventListener("loadedmetadata", init, false);
+if (video.readyState >= video.HAVE_METADATA) {
+ init.apply(video); // missed the event
+}
+
+// update transport bar while playing
+position = document.getElementById('position');
+curTime = document.getElementById('curTime');
+video.addEventListener("timeupdate", curTimeUpdate, false);
+
+// play/pause button
+play = document.getElementById('play');
+play.addEventListener('click', togglePlay, false);
+
+// click on transport bar sets playback position
+transportbar = document.getElementById('transportbar');
+transportbar.addEventListener("click", seek, false);
+
+// pause video when current chapter is finished
+video.addEventListener("timeupdate", endChapter, false);
+
+
+// display duration and chapters
+function init(evt) {
+ // update duration display
+ duration.innerHTML = video.duration.toFixed(2);
+
+ // grab chapters out of