首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在JQuery按钮被聚焦并按下空格键时防止页面滚动

如何在JQuery按钮被聚焦并按下空格键时防止页面滚动
EN

Stack Overflow用户
提问于 2012-04-15 04:36:26
回答 1查看 3.6K关注 0票数 2

当焦点位于JQuery对话框中的一个按钮上时,空格键做两件事:它选择该按钮并滚动窗口。熟悉空格键作为选择按钮的工具的人会期待第一个,但发现第二个不协调和不合适。

所以问题是:如何防止页面滚动?我认为这只是按钮处理程序返回false的问题,但这似乎不是真的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-23 22:58:51

我已经尝试了这里和其他地方建议的解决方案,但没有一个对我有效。最终起作用的是一个文档范围的按键处理程序,如下所示:

代码语言:javascript
复制
$(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按钮。如果没有按钮检查,所有地方的空格键都是禁用的。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10157162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档