我是處理BlackBerry設備的新手。我目前正在運行9700上的JavaScript問題並陷印按鍵事件並獲取正確的鍵碼。黑莓鍵盤/按鍵的JavaScript支持
我有這個JavaScript:
function numbersonly(e) {
var key
if(window.event) {
key = window.event.keyCode; // IE
}else{
key = e.which; // Firefox
}
alert('keycode : ' + key);
}
而且它通過一個不顯眼的addEvent腳本連接到輸入字段。
在一個標準的桌面瀏覽器(Firefox和IE)上,它會做你認爲它的功能......按一個按鍵會通過警報顯示鍵碼。
在BlackBerry上,但是,按一個鍵做兩件事情之一:
- 如果按鍵是數字1到9,什麼都不會發生。
- 如果它是任何其他鍵,keyCode是'未定義'。
任何想法是怎麼回事?我認爲這是對BlackBerry JavaScript支持的限制。
UPDATE:
測試這在9800模擬器爲好,這是運行OS6。問題在那裏不存在。所以這是BlackBerry OS5或BlackBerry的物理鍵盤的問題。
e.keyCode那會是黑莓手機爲中心的問題?例如,上面的腳本就像在Firefox中一樣工作。 –
@DA我不認爲有任何規範說明必須爲內聯事件處理程序設置_event_變量。它在IE中工作,因爲IE過去使用window.event而不是將事件對象與函數一起傳遞。 Firefox添加了與IE兼容的行爲。我不確定BB是否也是如此。 – Gerben
呃...我會試試看。也就是說,我們正在處理的應用程序將所有JS作爲內聯事件處理程序。好或壞,這可能是我需要工作的模型。 –