X-Git-Url: http://www.average.org/gitweb/?p=mkgallery.git;a=blobdiff_plain;f=include%2Fgallery.js;h=39d8d846b4aa9ed7759c98195daada2942311c85;hp=d5ff7755778ee00dd4a786dd1fa5871268b82d7e;hb=7a52825ce5f25653945b6f1ba8f1aa0098f95863;hpb=9e2f170c6e4ffb4f6ba758387c5689142615ecbd diff --git a/include/gallery.js b/include/gallery.js index d5ff775..39d8d84 100644 --- a/include/gallery.js +++ b/include/gallery.js @@ -38,10 +38,11 @@ function init_gallery() { /* Populate images list */ $$('div.varimages').each(function(el,i){ - rimgs[el.id] = i; - vimgs[i] = [el.id, el.title, []]; + var rel=el.get('id'); + rimgs[rel] = i; + vimgs[i] = [rel, el.title, []]; el.getElements('a').each(function(ael,j){ - dim = /(\d+)[^\d](\d+)/.exec(ael.text); + dim = /(\d+)[^\d](\d+)/.exec(ael.rel); w = dim[1]; h = dim[2]; vimgs[i][2][j]=[w,h,ael.href]; @@ -71,12 +72,12 @@ function init_gallery() { openFromLink: false, movieWidth: 640, movieHeight: 480, - descClassName: 'infoBoxDesc', + descClassName: 'infoBoxDesc' }; ibox = new multiBox('infoBox', iboxparams); var winparms = { - tohide: 'indexContainer', + tohide: 'indexContainer' }; var showwin = new showWindow('slideshowContainer',winparms); @@ -87,10 +88,24 @@ function init_gallery() { var showparms = { cbStart: function(){ showwin.show(); }, - cbExit: function(){ showwin.hide(); }, + cbExit: function(){ showwin.hide(); } }; var show = new Show(vimgs,showwin,ctl,showparms); + document.addEvent('keypress', function(ev){ + if (ev.key == 'esc') { + show.exit(); + } else if (ev.key == 'left') { + show.prev(); + } else if (ev.key == 'right') { + show.next(); + } else if (ev.key == 'space') { + show.toggleplay(); + } else { + /* alert('keypress: '+ev.key); */ + } + }); + /* Update HTML */ $$('.conceal').each(function(el){ @@ -103,11 +118,11 @@ function init_gallery() { $$('a.showStart').each(function(el){ el.addEvent('click', - show.start.bind(show,[rimgs[el.get('id')],1])); + show.start.bind(show,[rimgs[el.get('rel')],1])); }); $$('a.showImage').each(function(el){ el.addEvent('click', - show.start.bind(show,[rimgs[el.get('id')],0])); + show.start.bind(show,[rimgs[el.get('rel')],0])); }); /* Determine if we need to go directly into show mode */ @@ -122,9 +137,3 @@ function init_gallery() { /* Initialization */ window.addEvent('domready',init_gallery); -/* This is how I would like it done for explorer: -window.addEvent('readystatechange',function(parm){ - alert('readystatechange, parm='+parm); - init_gallery(); -}); -/* but it does not seem to work */