[英]Jquery .not() equivalent in javascript
我想使用簡單的按鍵來實現快捷方式功能,盡管我不想在用戶輸入輸入或文本區域時觸發快捷方式。
我注意到 Jquery 有一個 .not() 方法,它允許這樣做:
$(document).not("input").on('keyup keydown keypress', function(event) {
console.log(event);
if(event.key == 'n') {
alert('n pressed outside of input');
}
});
因此,我正在尋找一個等價的純 javascript 或一個函數來檢查用戶是否沒有關注輸入。
document.onkeypress = (event) => {
if (event.key == 'n') {
console.log('n has been pressed! (input or not)');
}
};
答案已由@ChrisG發表在評論中
盡管它不是.not()替代品,但它解決了我的問題
確實, event.target.tagName
返回大寫標簽的名稱。
因此,此代碼有效:
document.onkeypress = (event) => {
if (event.key == 'n' && event.target.tagName != 'INPUT' && event.target.tagName !=
'TEXTAREA') {
addTodo.click();
}
};
您的答案是正確的,但是對於您的問題:javascript中的Jquery .not(“ input”)等效項是document.querySelectorAll(“:not(input)”)。
它返回輸入元素以外的元素數組
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.