/* Initialize everything, to be called on domready */
function init_gallery() {
- /* List of lists of img variations. Each image variation is a three-element
- * array: [width, height, url]. Index of the outer array is the global ID.
+ /* List of lists of img variations. Each image variation is
+ * a three-element array: [width, height, url]. Index of the
+ * outer array is the global ID.
*
* [
* [ id, title, [
$$('div.varimages').each(function(el,i){
rimgs[el.id] = i;
- vimgs[i] = [];
+ vimgs[i] = [el.id, el.title, []];
el.getElements('a').each(function(ael,j){
dim = /(\d+)[^\d](\d+)/.exec(ael.text);
w = dim[1];
h = dim[2];
- vimgs[i][j]=[w,h,ael.href,el.id,el.title];
+ vimgs[i][2][j]=[w,h,ael.href];
});
});
/* 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);
};
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){
}
/* Initialization */
-window.addEvent('domready',init_gallery)
+window.addEvent('domready',init_gallery);
+