git.iko.soy/typeable/pandoc
on 73cbae7 help sign in
typeable/pandoc/tests/s5.basic.html
787 lines 24 kB history raw
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<!-- configuration parameters -->
5<meta name="defaultView" content="slideshow" />
6<meta name="controlVis" content="hidden" />
7<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
8<meta name="generator" content="pandoc" />
9<style type="text/css" media="projection" id="slideProj">
10/* Do not edit or override these styles! The system will likely break if you do. */
12div#header, div#footer, div#controls, .slide {position: absolute;}
13html>body div#header, html>body div#footer,
14 html>body div#controls, html>body .slide {position: fixed;}
15.handout {display: none;}
16.layout {display: block;}
17.slide, .hideme, .incremental {visibility: hidden;}
18#slide0 {visibility: visible;}
20/* The following styles size, place, and layer the slide components.
21 Edit these if you want to change the overall slide layout.
22 The commented lines can be uncommented (and modified, if necessary)
23 to help you with the rearrangement process. */
25/* target = 1024x768 */
27div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}
28div#header {top: 0; height: 3em; z-index: 1;}
29div#footer {top: auto; bottom: 0; height: 2.5em; z-index: 5;}
30.slide {top: 0; width: 92%; padding: 3.5em 4% 4%; z-index: 2; list-style: none;}
31div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}
32div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;
33 margin: 0;}
34#currentSlide {position: absolute; width: 10%; left: 45%; bottom: 1em; z-index: 10;}
35html>body #currentSlide {position: fixed;}
37/*
38div#header {background: #FCC;}
39div#footer {background: #CCF;}
40div#controls {background: #BBD;}
41div#currentSlide {background: #FFC;}
42*/
44/* Following are the presentation styles -- edit away! */
46body {background: #FFF url(bodybg.gif) -16px 0 no-repeat; color: #000; font-size: 2em;}
47:link, :visited {text-decoration: none; color: #00C;}
48#controls :active {color: #88A !important;}
49#controls :focus {outline: 1px dotted #227;}
50h1, h2, h3, h4 {font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}
51ul, pre {margin: 0; line-height: 1em;}
52html, body {margin: 0; padding: 0;}
54blockquote, q {font-style: italic;}
55blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; font-size: 1em;}
56blockquote p {margin: 0;}
57blockquote i {font-style: normal;}
58blockquote b {display: block; margin-top: 0.5em; font-weight: normal; font-size: smaller; font-style: normal;}
59blockquote b i {font-style: italic;}
61kbd {font-weight: bold; font-size: 1em;}
62sup {font-size: smaller; line-height: 1px;}
64.slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}
65.slide code.bad, code del {color: red;}
66.slide code.old {color: silver;}
67.slide pre {padding: 0; margin: 0.25em 0 0.5em 0.5em; color: #533; font-size: 90%;}
68.slide pre code {display: block;}
69.slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}
70.slide li {margin-top: 0.75em; margin-right: 0;}
71.slide ul ul {line-height: 1;}
72.slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}
73.slide img.leader {display: block; margin: 0 auto;}
75div#header, div#footer {background: #005; color: #AAB;
76 font-family: Verdana, Helvetica, sans-serif;}
77div#header {background: #005 url(bodybg.gif) -16px 0 no-repeat;
78 line-height: 1px;}
79div#footer {font-size: 0.5em; font-weight: bold; padding: 1em 0;}
80#footer h1, #footer h2 {display: block; padding: 0 1em;}
81#footer h2 {font-style: italic;}
83div.long {font-size: 0.75em;}
84.slide h1 {position: absolute; top: 0.7em; left: 87px; z-index: 1;
85 margin: 0; padding: 0.3em 0 0 50px; white-space: nowrap;
86 font: bold 150%/1em Helvetica, sans-serif; text-transform: capitalize;
87 color: #DDE; background: #005;}
88.slide h3 {font-size: 130%;}
89h1 abbr {font-variant: small-caps;}
91div#controls {position: absolute; left: 50%; bottom: 0;
92 width: 50%;
93 text-align: right; font: bold 0.9em Verdana, Helvetica, sans-serif;}
94html>body div#controls {position: fixed; padding: 0 0 1em 0;
95 top: auto;}
96div#controls form {position: absolute; bottom: 0; right: 0; width: 100%;
97 margin: 0; padding: 0;}
98#controls #navLinks a {padding: 0; margin: 0 0.5em;
99 background: #005; border: none; color: #779;
100 cursor: pointer;}
101#controls #navList {height: 1em;}
102#controls #navList #jumplist {position: absolute; bottom: 0; right: 0; background: #DDD; color: #227;}
104#currentSlide {text-align: center; font-size: 0.5em; color: #449;}
106#slide0 {padding-top: 3.5em; font-size: 90%;}
107#slide0 h1 {position: static; margin: 1em 0 0; padding: 0;
108 font: bold 2em Helvetica, sans-serif; white-space: normal;
109 color: #000; background: transparent;}
110#slide0 h2 {font: bold italic 1em Helvetica, sans-serif; margin: 0.25em;}
111#slide0 h3 {margin-top: 1.5em; font-size: 1.5em;}
112#slide0 h4 {margin-top: 0; font-size: 1em;}
114ul.urls {list-style: none; display: inline; margin: 0;}
115.urls li {display: inline; margin: 0;}
116.note {display: none;}
117.external {border-bottom: 1px dotted gray;}
118html>body .external {border-bottom: none;}
119.external:after {content: " \274F"; font-size: smaller; color: #77B;}
121.incremental, .incremental *, .incremental *:after {color: #DDE; visibility: visible;}
122img.incremental {visibility: hidden;}
123.slide .current {color: #B02;}
126/* diagnostics
128li:after {content: " [" attr(class) "]"; color: #F88;}
129 */
130</style>
131<style type="text/css" media="projection" id="operaFix">
132/* DO NOT CHANGE THESE unless you really want to break Opera Show */
133.slide {
134 visibility: visible !important;
135 position: static !important;
136 page-break-before: always;
138#slide0 {page-break-before: avoid;}
140</style>
141<style type="text/css" media="screen" id="outlineStyle">
142/* don't change this unless you want the layout stuff to show up in the outline view! */
144.layout div, #footer *, #controlForm * {display: none;}
145#footer, #controls, #controlForm, #navLinks, #toggle {
146 display: block; visibility: visible; margin: 0; padding: 0;}
147#toggle {float: right; padding: 0.5em;}
148html>body #toggle {position: fixed; top: 0; right: 0;}
150/* making the outline look pretty-ish */
152#slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}
153#slide0 h1 {padding-top: 1.5em;}
154.slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;
155 border-top: 1px solid #888; border-bottom: 1px solid #AAA;}
156#toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}
158</style>
159<style type="text/css" media="print" id="slidePrint">
160/* The following rule is necessary to have all slides appear in print! DO NOT REMOVE IT! */
161.slide, ul {page-break-inside: avoid; visibility: visible !important;}
162h1 {page-break-after: avoid;}
164body {font-size: 12pt; background: white;}
165* {color: black;}
167#slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}
168#slide0 h3 {margin: 0; padding: 0;}
169#slide0 h4 {margin: 0 0 0.5em; padding: 0;}
170#slide0 {margin-bottom: 3em;}
172h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}
173.extra {background: transparent !important;}
174div.extra, pre.extra, .example {font-size: 10pt; color: #333;}
175ul.extra a {font-weight: bold;}
176p.example {display: none;}
178#header {display: none;}
179#footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: italic;}
180#footer h2, #controls {display: none;}
182/* The following rule keeps the layout stuff out of print. Remove at your own risk! */
183.layout, .layout * {display: none !important;}
185</style>
186<script type="text/javascript">
187// S5 v1.1 slides.js -- released into the Public Domain
188//
189// Please see http://www.meyerweb.com/eric/tools/s5/credits.html for information
190// about all the wonderful and talented contributors to this code!
192var undef;
193var slideCSS = '';
194var snum = 0;
195var smax = 1;
196var incpos = 0;
197var number = undef;
198var s5mode = true;
199var defaultView = 'slideshow';
200var controlVis = 'visible';
202var isIE = navigator.appName == 'Microsoft Internet Explorer' && navigator.userAgent.indexOf('Opera') < 1 ? 1 : 0;
203var isOp = navigator.userAgent.indexOf('Opera') > -1 ? 1 : 0;
204var isGe = navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('Safari') < 1 ? 1 : 0;
206function hasClass(object, className) {
207 if (!object.className) return false;
208 return (object.className.search('(^|\\s)' + className + '(\\s|$)') != -1);
211function hasValue(object, value) {
212 if (!object) return false;
213 return (object.search('(^|\\s)' + value + '(\\s|$)') != -1);
216function removeClass(object,className) {
217 if (!object) return;
218 object.className = object.className.replace(new RegExp('(^|\\s)'+className+'(\\s|$)'), RegExp.$1+RegExp.$2);
221function addClass(object,className) {
222 if (!object || hasClass(object, className)) return;
223 if (object.className) {
224 object.className += ' '+className;
225 } else {
226 object.className = className;
227 }
230function GetElementsWithClassName(elementName,className) {
231 var allElements = document.getElementsByTagName(elementName);
232 var elemColl = new Array();
233 for (var i = 0; i< allElements.length; i++) {
234 if (hasClass(allElements[i], className)) {
235 elemColl[elemColl.length] = allElements[i];
236 }
237 }
238 return elemColl;
241function isParentOrSelf(element, id) {
242 if (element == null || element.nodeName=='BODY') return false;
243 else if (element.id == id) return true;
244 else return isParentOrSelf(element.parentNode, id);
247function nodeValue(node) {
248 var result = "";
249 if (node.nodeType == 1) {
250 var children = node.childNodes;
251 for (var i = 0; i < children.length; ++i) {
252 result += nodeValue(children[i]);
253 }
254 }
255 else if (node.nodeType == 3) {
256 result = node.nodeValue;
257 }
258 return(result);
261function slideLabel() {
262 var slideColl = GetElementsWithClassName('*','slide');
263 var list = document.getElementById('jumplist');
264 smax = slideColl.length;
265 for (var n = 0; n < smax; n++) {
266 var obj = slideColl[n];
268 var did = 'slide' + n.toString();
269 obj.setAttribute('id',did);
270 if (isOp) continue;
272 var otext = '';
273 var menu = obj.firstChild;
274 if (!menu) continue; // to cope with empty slides
275 while (menu && menu.nodeType == 3) {
276 menu = menu.nextSibling;
277 }
278 if (!menu) continue; // to cope with slides with only text nodes
280 var menunodes = menu.childNodes;
281 for (var o = 0; o < menunodes.length; o++) {
282 otext += nodeValue(menunodes[o]);
283 }
284 list.options[list.length] = new Option(n + ' : ' + otext, n);
285 }
288function currentSlide() {
289 var cs;
290 if (document.getElementById) {
291 cs = document.getElementById('currentSlide');
292 } else {
293 cs = document.currentSlide;
294 }
295 cs.innerHTML = '<span id="csHere">' + snum + '<\/span> ' +
296 '<span id="csSep">\/<\/span> ' +
297 '<span id="csTotal">' + (smax-1) + '<\/span>';
298 if (snum == 0) {
299 cs.style.visibility = 'hidden';
300 } else {
301 cs.style.visibility = 'visible';
302 }
305function go(step) {
306 if (document.getElementById('slideProj').disabled || step == 0) return;
307 var jl = document.getElementById('jumplist');
308 var cid = 'slide' + snum;
309 var ce = document.getElementById(cid);
310 if (incrementals[snum].length > 0) {
311 for (var i = 0; i < incrementals[snum].length; i++) {
312 removeClass(incrementals[snum][i], 'current');
313 removeClass(incrementals[snum][i], 'incremental');
314 }
315 }
316 if (step != 'j') {
317 snum += step;
318 lmax = smax - 1;
319 if (snum > lmax) snum = lmax;
320 if (snum < 0) snum = 0;
321 } else
322 snum = parseInt(jl.value);
323 var nid = 'slide' + snum;
324 var ne = document.getElementById(nid);
325 if (!ne) {
326 ne = document.getElementById('slide0');
327 snum = 0;
328 }
329 if (step < 0) {incpos = incrementals[snum].length} else {incpos = 0;}
330 if (incrementals[snum].length > 0 && incpos == 0) {
331 for (var i = 0; i < incrementals[snum].length; i++) {
332 if (hasClass(incrementals[snum][i], 'current'))
333 incpos = i + 1;
334 else
335 addClass(incrementals[snum][i], 'incremental');
336 }
337 }
338 if (incrementals[snum].length > 0 && incpos > 0)
339 addClass(incrementals[snum][incpos - 1], 'current');
340 ce.style.visibility = 'hidden';
341 ne.style.visibility = 'visible';
342 jl.selectedIndex = snum;
343 currentSlide();
344 number = 0;
347function goTo(target) {
348 if (target >= smax || target == snum) return;
349 go(target - snum);
352function subgo(step) {
353 if (step > 0) {
354 removeClass(incrementals[snum][incpos - 1],'current');
355 removeClass(incrementals[snum][incpos], 'incremental');
356 addClass(incrementals[snum][incpos],'current');
357 incpos++;
358 } else {
359 incpos--;
360 removeClass(incrementals[snum][incpos],'current');
361 addClass(incrementals[snum][incpos], 'incremental');
362 addClass(incrementals[snum][incpos - 1],'current');
363 }
366function toggle() {
367 var slideColl = GetElementsWithClassName('*','slide');
368 var slides = document.getElementById('slideProj');
369 var outline = document.getElementById('outlineStyle');
370 if (!slides.disabled) {
371 slides.disabled = true;
372 outline.disabled = false;
373 s5mode = false;
374 fontSize('1em');
375 for (var n = 0; n < smax; n++) {
376 var slide = slideColl[n];
377 slide.style.visibility = 'visible';
378 }
379 } else {
380 slides.disabled = false;
381 outline.disabled = true;
382 s5mode = true;
383 fontScale();
384 for (var n = 0; n < smax; n++) {
385 var slide = slideColl[n];
386 slide.style.visibility = 'hidden';
387 }
388 slideColl[snum].style.visibility = 'visible';
389 }
392function showHide(action) {
393 var obj = GetElementsWithClassName('*','hideme')[0];
394 switch (action) {
395 case 's': obj.style.visibility = 'visible'; break;
396 case 'h': obj.style.visibility = 'hidden'; break;
397 case 'k':
398 if (obj.style.visibility != 'visible') {
399 obj.style.visibility = 'visible';
400 } else {
401 obj.style.visibility = 'hidden';
402 }
403 break;
404 }
407// 'keys' code adapted from MozPoint (http://mozpoint.mozdev.org/)
408function keys(key) {
409 if (!key) {
410 key = event;
411 key.which = key.keyCode;
412 }
413 if (key.which == 84) {
414 toggle();
415 return;
416 }
417 if (s5mode) {
418 switch (key.which) {
419 case 10: // return
420 case 13: // enter
421 if (window.event && isParentOrSelf(window.event.srcElement, 'controls')) return;
422 if (key.target && isParentOrSelf(key.target, 'controls')) return;
423 if(number != undef) {
424 goTo(number);
425 break;
426 }
427 case 32: // spacebar
428 case 34: // page down
429 case 39: // rightkey
430 case 40: // downkey
431 if(number != undef) {
432 go(number);
433 } else if (!incrementals[snum] || incpos >= incrementals[snum].length) {
434 go(1);
435 } else {
436 subgo(1);
437 }
438 break;
439 case 33: // page up
440 case 37: // leftkey
441 case 38: // upkey
442 if(number != undef) {
443 go(-1 * number);
444 } else if (!incrementals[snum] || incpos <= 0) {
445 go(-1);
446 } else {
447 subgo(-1);
448 }
449 break;
450 case 36: // home
451 goTo(0);
452 break;
453 case 35: // end
454 goTo(smax-1);
455 break;
456 case 67: // c
457 showHide('k');
458 break;
459 }
460 if (key.which < 48 || key.which > 57) {
461 number = undef;
462 } else {
463 if (window.event && isParentOrSelf(window.event.srcElement, 'controls')) return;
464 if (key.target && isParentOrSelf(key.target, 'controls')) return;
465 number = (((number != undef) ? number : 0) * 10) + (key.which - 48);
466 }
467 }
468 return false;
471function clicker(e) {
472 number = undef;
473 var target;
474 if (window.event) {
475 target = window.event.srcElement;
476 e = window.event;
477 } else target = e.target;
478 if (target.getAttribute('href') != null || hasValue(target.rel, 'external') || isParentOrSelf(target, 'controls') || isParentOrSelf(target,'embed') || isParentOrSelf(target,'object')) return true;
479 if (!e.which || e.which == 1) {
480 if (!incrementals[snum] || incpos >= incrementals[snum].length) {
481 go(1);
482 } else {
483 subgo(1);
484 }
485 }
488function findSlide(hash) {
489 var target = null;
490 var slides = GetElementsWithClassName('*','slide');
491 for (var i = 0; i < slides.length; i++) {
492 var targetSlide = slides[i];
493 if ( (targetSlide.name && targetSlide.name == hash)
494 || (targetSlide.id && targetSlide.id == hash) ) {
495 target = targetSlide;
496 break;
497 }
498 }
499 while(target != null && target.nodeName != 'BODY') {
500 if (hasClass(target, 'slide')) {
501 return parseInt(target.id.slice(5));
502 }
503 target = target.parentNode;
504 }
505 return null;
508function slideJump() {
509 if (window.location.hash == null) return;
510 var sregex = /^#slide(\d+)$/;
511 var matches = sregex.exec(window.location.hash);
512 var dest = null;
513 if (matches != null) {
514 dest = parseInt(matches[1]);
515 } else {
516 dest = findSlide(window.location.hash.slice(1));
517 }
518 if (dest != null)
519 go(dest - snum);
522function fixLinks() {
523 var thisUri = window.location.href;
524 thisUri = thisUri.slice(0, thisUri.length - window.location.hash.length);
525 var aelements = document.getElementsByTagName('A');
526 for (var i = 0; i < aelements.length; i++) {
527 var a = aelements[i].href;
528 var slideID = a.match('\#slide[0-9]{1,2}');
529 if ((slideID) && (slideID[0].slice(0,1) == '#')) {
530 var dest = findSlide(slideID[0].slice(1));
531 if (dest != null) {
532 if (aelements[i].addEventListener) {
533 aelements[i].addEventListener("click", new Function("e",
534 "if (document.getElementById('slideProj').disabled) return;" +
535 "go("+dest+" - snum); " +
536 "if (e.preventDefault) e.preventDefault();"), true);
537 } else if (aelements[i].attachEvent) {
538 aelements[i].attachEvent("onclick", new Function("",
539 "if (document.getElementById('slideProj').disabled) return;" +
540 "go("+dest+" - snum); " +
541 "event.returnValue = false;"));
542 }
543 }
544 }
545 }
548function externalLinks() {
549 if (!document.getElementsByTagName) return;
550 var anchors = document.getElementsByTagName('a');
551 for (var i=0; i<anchors.length; i++) {
552 var anchor = anchors[i];
553 if (anchor.getAttribute('href') && hasValue(anchor.rel, 'external')) {
554 anchor.target = '_blank';
555 addClass(anchor,'external');
556 }
557 }
560function createControls() {
561 var controlsDiv = document.getElementById("controls");
562 if (!controlsDiv) return;
563 var hider = ' onmouseover="showHide(\'s\');" onmouseout="showHide(\'h\');"';
564 var hideDiv, hideList = '';
565 if (controlVis == 'hidden') {
566 hideDiv = hider;
567 } else {
568 hideList = hider;
569 }
570 controlsDiv.innerHTML = '<form action="#" id="controlForm"' + hideDiv + '>' +
571 '<div id="navLinks">' +
572 '<a accesskey="t" id="toggle" href="javascript:toggle();">&#216;<\/a>' +
573 '<a accesskey="z" id="prev" href="javascript:go(-1);">&laquo;<\/a>' +
574 '<a accesskey="x" id="next" href="javascript:go(1);">&raquo;<\/a>' +
575 '<div id="navList"' + hideList + '><select id="jumplist" onchange="go(\'j\');"><\/select><\/div>' +
576 '<\/div><\/form>';
577 if (controlVis == 'hidden') {
578 var hidden = document.getElementById('navLinks');
579 } else {
580 var hidden = document.getElementById('jumplist');
581 }
582 addClass(hidden,'hideme');
585function fontScale() { // causes layout problems in FireFox that get fixed if browser's Reload is used; same may be true of other Gecko-based browsers
586 if (!s5mode) return false;
587 var vScale = 22; // both yield 32 (after rounding) at 1024x768
588 var hScale = 32; // perhaps should auto-calculate based on theme's declared value?
589 if (window.innerHeight) {
590 var vSize = window.innerHeight;
591 var hSize = window.innerWidth;
592 } else if (document.documentElement.clientHeight) {
593 var vSize = document.documentElement.clientHeight;
594 var hSize = document.documentElement.clientWidth;
595 } else if (document.body.clientHeight) {
596 var vSize = document.body.clientHeight;
597 var hSize = document.body.clientWidth;
598 } else {
599 var vSize = 700; // assuming 1024x768, minus chrome and such
600 var hSize = 1024; // these do not account for kiosk mode or Opera Show
601 }
602 var newSize = Math.min(Math.round(vSize/vScale),Math.round(hSize/hScale));
603 fontSize(newSize + 'px');
604 if (isGe) { // hack to counter incremental reflow bugs
605 var obj = document.getElementsByTagName('body')[0];
606 obj.style.display = 'none';
607 obj.style.display = 'block';
608 }
611function fontSize(value) {
612 if (!(s5ss = document.getElementById('s5ss'))) {
613 if (!isIE) {
614 document.getElementsByTagName('head')[0].appendChild(s5ss = document.createElement('style'));
615 s5ss.setAttribute('media','screen, projection');
616 s5ss.setAttribute('id','s5ss');
617 } else {
618 document.createStyleSheet();
619 document.s5ss = document.styleSheets[document.styleSheets.length - 1];
620 }
621 }
622 if (!isIE) {
623 while (s5ss.lastChild) s5ss.removeChild(s5ss.lastChild);
624 s5ss.appendChild(document.createTextNode('body {font-size: ' + value + ' !important;}'));
625 } else {
626 document.s5ss.addRule('body','font-size: ' + value + ' !important;');
627 }
630function notOperaFix() {
631 slideCSS = document.getElementById('slideProj').href;
632 var slides = document.getElementById('slideProj');
633 var outline = document.getElementById('outlineStyle');
634 slides.setAttribute('media','screen');
635 outline.disabled = true;
636 if (isGe) {
637 slides.setAttribute('href','null'); // Gecko fix
638 slides.setAttribute('href',slideCSS); // Gecko fix
639 }
640 if (isIE && document.styleSheets && document.styleSheets[0]) {
641 document.styleSheets[0].addRule('img', 'behavior: url(ui/default/iepngfix.htc)');
642 document.styleSheets[0].addRule('div', 'behavior: url(ui/default/iepngfix.htc)');
643 document.styleSheets[0].addRule('.slide', 'behavior: url(ui/default/iepngfix.htc)');
644 }
647function getIncrementals(obj) {
648 var incrementals = new Array();
649 if (!obj)
650 return incrementals;
651 var children = obj.childNodes;
652 for (var i = 0; i < children.length; i++) {
653 var child = children[i];
654 if (hasClass(child, 'incremental')) {
655 if (child.nodeName == 'OL' || child.nodeName == 'UL') {
656 removeClass(child, 'incremental');
657 for (var j = 0; j < child.childNodes.length; j++) {
658 if (child.childNodes[j].nodeType == 1) {
659 addClass(child.childNodes[j], 'incremental');
660 }
661 }
662 } else {
663 incrementals[incrementals.length] = child;
664 removeClass(child,'incremental');
665 }
666 }
667 if (hasClass(child, 'show-first')) {
668 if (child.nodeName == 'OL' || child.nodeName == 'UL') {
669 removeClass(child, 'show-first');
670 if (child.childNodes[isGe].nodeType == 1) {
671 removeClass(child.childNodes[isGe], 'incremental');
672 }
673 } else {
674 incrementals[incrementals.length] = child;
675 }
676 }
677 incrementals = incrementals.concat(getIncrementals(child));
678 }
679 return incrementals;
682function createIncrementals() {
683 var incrementals = new Array();
684 for (var i = 0; i < smax; i++) {
685 incrementals[i] = getIncrementals(document.getElementById('slide'+i));
686 }
687 return incrementals;
690function defaultCheck() {
691 var allMetas = document.getElementsByTagName('meta');
692 for (var i = 0; i< allMetas.length; i++) {
693 if (allMetas[i].name == 'defaultView') {
694 defaultView = allMetas[i].content;
695 }
696 if (allMetas[i].name == 'controlVis') {
697 controlVis = allMetas[i].content;
698 }
699 }
702// Key trap fix, new function body for trap()
703function trap(e) {
704 if (!e) {
705 e = event;
706 e.which = e.keyCode;
707 }
708 try {
709 modifierKey = e.ctrlKey || e.altKey || e.metaKey;
710 }
711 catch(e) {
712 modifierKey = false;
713 }
714 return modifierKey || e.which == 0;
717function startup() {
718 defaultCheck();
719 if (!isOp)
720 createControls();
721 slideLabel();
722 fixLinks();
723 externalLinks();
724 fontScale();
725 if (!isOp) {
726 notOperaFix();
727 incrementals = createIncrementals();
728 slideJump();
729 if (defaultView == 'outline') {
730 toggle();
731 }
732 document.onkeyup = keys;
733 document.onkeypress = trap;
734 document.onclick = clicker;
735 }
738window.onload = startup;
739window.onresize = function(){setTimeout('fontScale()', 50);}</script>
741<meta name="author" content="Sam Smith, Jen Jones" />
742<meta name="date" content="July 15, 2006" />
743<title>My S5 Document</title>
744</head>
745<body>
746<div class="layout">
747<div id="controls"></div>
748<div id="currentSlide"></div>
749<div id="header"></div>
750<div id="footer">
752<h1>July 15, 2006</h1>
753<h2>My S5 Document</h2>
754</div>
755</div>
757<div class="presentation">
760<div class="slide">
762<h1>My S5 Document</h1>
763<h3>Sam Smith, Jen Jones</h3>
764<h4>July 15, 2006</h4>
765</div>
767<div class="slide">
769<h1>First slide</h1>
770<ul>
771 <li>first bullet</li>
772 <li>second bullet</li>
773</ul>
774</div>
776<div class="slide">
778<h1>Math</h1>
779<ul>
780 <li>$\frac{d}{dx}f(x)=\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}$</li>
781</ul>
782</div>
784</div>
786</body>
787</html>