[英]How to trigger a JavaScript event when not in a text field
我有一個音樂博客,我希望空格鍵能夠在我的音樂播放器上觸發播放和暫停之間的切換。 當用戶沒有在文本字段中輸入內容時,我只希望它這樣做。 顯然,當用戶在我的搜索欄或任何類型的表單中鍵入內容時,我不希望音樂播放器切換。
現在,我正在使用以下代碼,但是當用戶也在文本字段中時它將切換:
$(document.documentElement).keydown(function(event)
{
if(event.which === 32)
{
event.preventDefault();
//Some code to perform the start/pause toggle
}
});
有簡單的解決方案嗎? 是的,順便說一句,我知道event.preventDefault(); 不允許用戶在文本字段中鍵入空格鍵,但是當您不在文本字段中時,它會阻止頁面向下跳轉。
//Check if there are any text boxes that are focused
if($("input[type=\"text\"]:focus").length == 0)
{
}
檢查引發事件的元素是什么,並阻止input-y元素觸發操作:
$(document.documentElement).keydown(function(event)
{
if(event.which === 32 && event.target.value===undefined )
{
event.preventDefault();
//Some code to perform the start/pause toggle
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.