X-Git-Url: http://www.average.org/gitweb/?p=mkgallery.git;a=blobdiff_plain;f=include%2Fgallery.js;h=fa37bbf7925fb12e10b86ab050477aade5c294bd;hp=4ea3f2d638d5b9251e4fe29d7b9b291f474d9d1d;hb=571fe3717a8c6905899034b813c4e7f4cacbf92a;hpb=bf4ffba811821b98c05460149d8bf2d8cc807a29 diff --git a/include/gallery.js b/include/gallery.js index 4ea3f2d..fa37bbf 100644 --- a/include/gallery.js +++ b/include/gallery.js @@ -38,8 +38,9 @@ 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); w = dim[1]; @@ -51,9 +52,9 @@ function init_gallery() { /* debugging output var msg='loaded '+vimgs.length+' image descriptions:'; vimgs.each(function(vimg,i){ - msg+='\nid='+i; - vimg.each(function(vimg,i){ - msg+='\n w='+vimg[0]+' h='+vimg[1]+' url='+vimg[2]; + msg+='\nid='+i+' ('+vimg[0]+') title='+vimg[1]; + vimg[2].each(function(vv,i){ + msg+='\n w='+vv[0]+' h='+vv[1]+' url='+vv[2]; }); }); alert(msg); @@ -91,6 +92,20 @@ function init_gallery() { }; 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 */ @@ -120,4 +135,5 @@ function init_gallery() { } /* Initialization */ -window.addEvent('domready',init_gallery) +window.addEvent('domready',init_gallery); +