X-Git-Url: https://git-public.kairo.at/?p=slides.git;a=blobdiff_plain;f=fosdem2009%2Fslides.js;h=68dfd9a52aef4f83bb05deb349104914addfddd6;hp=134b3f4e0e221a2e6145ca1bb81bee23f959bb90;hb=067c2e2b1a29d375849b2cf4ccf156a3240f0bfe;hpb=cc144c07fbaf1a4eac63af217630e7ca69d1472e diff --git a/fosdem2009/slides.js b/fosdem2009/slides.js index 134b3f4..68dfd9a 100644 --- a/fosdem2009/slides.js +++ b/fosdem2009/slides.js @@ -5,13 +5,7 @@ * (for FOSDEM 2007) * ******************************/ -function docClicked(event) { - if (event.target.nodeName != "A") { - location.href = document.getElementById('goNext').href; - } -} - -// do timed color variantion on slides +// do timed color variation on slides var slide_seconds = 3*60; var slide_start = new Date(); @@ -34,5 +28,37 @@ function timerFired() { setTimeout("timerFired()", 1000); } } - setTimeout("timerFired()", 1000*(slide_seconds/3)); + +(function() { + function go(where) { + where = where || "next"; + var links = document.getElementsByTagName("link"); + for (var i = 0; i < links.length; ++i) { + if (links[i].rel == where) { + window.location.href = links[i].href; + break; + } + } + } + + function handleClick(e) { + e = e || event; + var target = (window.event) ? e.srcElement : e.target; + if (e.which == 1 && target.nodeName != "A" && target.nodeName != "VIDEO") + go("next"); + } + + function handleKeyPress(e) { + e = e || event; + switch (e.keyCode) { + case e.DOM_VK_LEFT: + go("previous"); break; + case e.DOM_VK_RIGHT: + go("next"); break; + } + } + + window.onclick = handleClick; + window.onkeypress = handleKeyPress; +})();