[英]How to prevent page from scrolling when a JQuery button is focused and space-bar is pressed
當焦點在JQuery對話框中的按鈕上時,空格鍵會做兩件事:它選擇按鈕並滾動窗口。 熟悉空格鍵作為選擇按鈕的工具的人會期望第一個,但發現第二個不和諧並且不合適。
所以問題是:如何阻止頁面滾動? 我原以為這只是從按鈕處理程序返回false的問題,但這似乎不是真的。
我已經嘗試過這里和其他地方建議的解決方案,但沒有一個能為我工作。 最終工作的是像這樣的文檔范圍的keydown處理程序:
$(document).keydown(function (e) {
var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
if ((key == 32) && (e.target.className != null) && (e.target.className.indexOf("ui-button") != -1))
e.preventDefault();
});
鍵== 32顯然是空格鍵的檢查。 className檢查所討論的UI(用戶界面)元素是否是JQuery按鈕。 沒有按鈕檢查,空格鍵到處都是禁用的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.