簡體   English   中英

event.cancel 在 IE11 中的使用

[英]event.cancel usage in IE11

我有一個舊應用程序,其中包含以下用於處理按鍵按下事件的 JavaScript 代碼:

if (event.keyCode == 13) {
    event.cancel = true;
    document.getElementById(btnId).click();
    return false;
}

return true;

它應該做的是檢查用戶是否按下了 Enter 鍵,如果是,則模擬單擊按鈕,並且不執行 key-down 事件的默認操作。

這在 Google Chrome、Firefox 和 IE8 中運行良好。 但是,它在 IE11 中不起作用。 如何使此代碼在 IE11 中工作?

問題是將event.cancel設置為false在 IE11 中沒有任何作用。 取消默認事件處理的公認方法是使用event.preventDefault()函數。 以下代碼修復了該問題並適用於 IE11、Chrome 和 Firefox:

if (event.keyCode == 13) {
    event.preventDefault();
    document.getElementById(btnId).click();
    return false;
}

return true;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM