我不知道如何用純JavaScript做'keydown'。keydown with JavaScript
下面是我用jQuery做的,但是有沒有辦法用純JS做同樣的事情呢? 我只想檢查是否有方法並學習如何去做,以及看到代碼的差異和長度。謝謝。
$('body').on('keydown', function(e) {
if (e.keyCode === 27) return false;
});
編輯:它用來禁用「Esc」按鈕!
我不知道如何用純JavaScript做'keydown'。keydown with JavaScript
下面是我用jQuery做的,但是有沒有辦法用純JS做同樣的事情呢? 我只想檢查是否有方法並學習如何去做,以及看到代碼的差異和長度。謝謝。
$('body').on('keydown', function(e) {
if (e.keyCode === 27) return false;
});
編輯:它用來禁用「Esc」按鈕!
在這裏你去
document.body.onkeydown = function(e) {
if (e.keyCode === 27) return false;
}
正如你可以看到jQuery是短,但這將執行更少的代碼
我不喜歡設定聽衆的屬性,所以我即使添加這樣的偵聽器:
var ele = document.getElementById('test');
ele.addEventListener('keydown', function() {
//code
}, false);
IE8和不支持addEventListener – epascarello 2013-03-12 13:21:10
爲什麼我不能得到任何工作的答案!他們都可以工作,但是隨機的東西,我把如alert();但不是爲了壓倒fancybox esc關閉! ( – dvLden 2013-03-12 13:30:20
試試這個,
HTML
<body onkeydown="YourFunction(event)">...</body>
JS
function YourFunction(e)
{
var unicode=e.keyCode || e.charCode|| e.which;
if(unicode == 27)
return false;
else
{
//Your code...
}
}
IE不通過事件對象 – epascarello 2013-03-12 13:50:54
嗯..我使用的是IE9.0,它工作的很好,而且我改變了IE7和IE8 **的瀏覽器模式。好吧, – 2013-03-12 14:39:44
在純JavaScript是做這樣
document.body.onkeydown=function(e){
key=e.keyCode || e.charCode|| e.which; //cross browser complications
if(key===27){
return false;
}
}
希望它的幫助下,它是同一個腳本爲您提供
JQuery的一個更新了,現在,我會有一個更好的瀏覽器支持,但不知道有關IE – Ronnie 2013-03-12 13:26:30
您是否在您最喜愛的搜索引擎中搜索「keydown JavaScript」? NE? – epascarello 2013-03-12 13:10:39
http://stackoverflow.com/questions/3036243/cancel-the-keydown-in-html – 2013-03-12 13:11:07
我確實搜索@epascarello。然而沒有任何作品如果我添加警報或控制檯日誌它的工作原理,但如果我想重寫一些在Esc上「關閉」的東西,它就不會工作。適用於jQuery tho:/ – dvLden 2013-03-12 13:17:51