3.4 响应键盘动作

通常我们都有用键盘来查看照片的习惯,下面介绍如何用键盘来一幅一幅地查看照片。

3.4.1 常见键盘按键对应的ASCII码值

键盘上每一个键都定义了一个ASCII码值,请参考表3-1。

表3-1 常见键盘按键对应的ASCII码值

表3-1只是列举了常用的按键,更多按键可上网查询。

3.4.2 响应键盘动作

响应键盘动作的代码见【范例3-6】。

【范例3-6 响应键盘动作】

    1.      eg.init = function(){
    2.              eg.showThumb(1);                     //初始化要显示的小图列表
    3.               eg.addListener(eg.$("next"), "click", function(){
                                                    //单击上一组图标时
    4.                      eg.nextThumb();              //显示下一组小图列表
    5.               });
    6.               eg.addListener(eg.$("prve"), "click", function(){
                                                    //单击下一组图标时
    7.                      eg.prveThumb();              //显示上一组小图列表
    8.               });
    9.               eg.addListener(document, "keyup", function(e){
    10.                      e = e || event;
    11.                     if(e.keyCode == 37){        //按左方向键←时
    12.                             eg.prvePhoto();      //显示上一张大图
    13.                      }
    14.                     if(e.keyCode == 39){        //按右方向键→时
    15.                             eg.nextPhoto();      //显示下一张大图
    16.                      }
    17.             });
    18.     };
    19.     eg.nextPhoto = function(){
    20.             if(eg.showNumber%eg.groupSize == (eg.groupSize-1)){
    21.                      eg.nextThumb()
    22.             }else if(eg.showNumber<eg.data.length-1){
    23.                      eg.showNumber++;
    24.                     eg.showBig();                 //显示大图
    25.             }
    26.     };
    27.     eg.prvePhoto = function(){
    28.             if(eg.showNumber == ((eg.groupNumber-1)*eg.groupSize)){
    29.                      eg.prveThumb()
    30.             }else if(eg.showNumber>0){
    31.                      eg.showNumber--;
    32.                      eg.showBig();
    33.             }
    34.     };

键盘事件的主要代码是【范例3-6】中的第9行,它监听了document的onkeyup事件,这时候我们按左箭头键(←)和右箭头键(→)就可以通过上一张、下一张进行照片浏览了。

下面是几个主要的键盘事件。


● onkeydown是在用户按下任何键盘键(包括系统按钮,如箭头键和功能键)时发生。

● onkeypress是在用户按下并放开任何字母数字键时发生。系统按钮(如箭头键和功能键)无法得到识别。

● onkeyup是在用户放开任何先前按下的键盘键时发生。