File "keyboard.js"
Full path: E:/sites/Single15/tinmung2007/webroot/TRUYENGIAO/RuatoiAug909/album/res/js/keyboard.js
File size: 2.13 KiB (2183 bytes)
MIME-type:
Charset: utf-8
/*
************************************************************
Keyboard support
Keys:
RIGHT arrow : next page
LEFT arrow : previous page
UP arrow : index page
HOME : first page
END : last page
S,s : toggle start/stop slide show
I,i : toggle exif info
Tested on: IE6, Mozzila 1.4, Netscape 7.1, Opera 7.2
Not yet support for Netscape 4.x :-(
Bugs:
- HOME,END, NUM+, NUM- doesn't work in Opera
Author: Danutz
************************************************************
*/
var takenAction = false;
//IE&Gecko Code
function IEGeckoKeyPress(oEvent) {
if(typeof _jaWidgetFocus != 'undefined' && _jaWidgetFocus) return true;
if (!oEvent) var oEvent = window.event;
if (oEvent.keyCode) myKeyCode = oEvent.keyCode;
else if (oEvent.which) myKeyCode = oEvent.which;
if (oEvent.repeat || takenAction) { return; }
if (myKeyCode >= 16 && myKeyCode <= 18) { return; }
if (oEvent.shiftKey) { myKeyCode += 1000; }
if (oEvent.ctrlKey) { myKeyCode += 2000; }
if (oEvent.altKey) { myKeyCode += 4000; }
//TODO_BY_YOU: If you don't know what keycode has your key , uncomment the following ...
//alert(oEvent.type + "=" + myKeyCode);
myKeyPress(myKeyCode);
}
function myKeyPress(myKeyCode) {
switch (myKeyCode) {
case 39: // RIGHT arrow
case 107: // NUM +
takenAction = true;
nextPage();
break;
case 37: // LEFT arrow
case 109: // NUM -
takenAction = true;
prevPage();
break;
case 38: // UP arrow
takenAction = true;
indexPage();
break;
case 36: // HOME
takenAction = true;
firstPage();
break;
case 35: // END
takenAction = true;
lastPage();
break;
case 83: // S,s
if ( isSlideShow ) {
// Only if i have slide show
takenAction = true;
navSlideShow();
}
break;
case 73: // I,i
takenAction = true;
navToggleInfo();
break;
default:
//alert(oEvent.type + "=" + myKeyCode);
break;
}
}
function initKeyboard() {
document.onkeydown = IEGeckoKeyPress;
}