2012年2月23日 星期四

範例網更新 - 鍵盤事件

這個東西很久以前就有寫過,而且檔案還存在我的隨身碟裡。是什麼東西重要到要存在隨身碟裡呢?其實它是用來檢查打LF2的時候會不會卡鍵(爆)。但是就在前幾天,在刪東西時手殘就不小心把它刪掉了為什麼在隨身碟裡刪會直接消失啊啊(吶喊),於是就再寫了一次。

首先當然是註冊事件

document.onkeydown=keydown; 
document.onkeyup=keyup;

來看看keydown

function keydown(e){ 
    if(!e)e=window.event;   // For IE
    k=e.keyCode;    //取得key code
    if(document.getElementById("key"+k))return; 
    //檢查此keycode的div是否存在,避免重覆產生同id的div元素
    o=document.createElement("div");
    o.appendChild(
        document.createTextNode(
            keyMap[k]?keyMap[k]:k   
            //如果keyCode存在keyMap中就使用keyMap
        )
    );
    o.id="key"+k;   //設定id
    document.getElementById("container").appendChild(o);
}

KeyUp:

function keyup(e){ 
    if(!e)e=window.event;   // For IE
    k=e.keyCode;
    if(!(o=document.getElementById("key"+k)))return;
    //檢查是否存在...雖然好像不需要,只是下一行會報錯
    o.parentNode.removeChild(o);
}

至於keyMap是什麼...就直接上範例網看吧,這就不貼了。
點我看範例

沒有留言:

張貼留言