如何在按下键时获得第一个选择(防止显示“添加书签”对话框)
How to get first pick at keydown (preventing "add bookmark" dialog from showing)
我的jQuery应用程序中有一个复选框,您可以选中它来复制<div>
。我现在想为操作创建一个Ctrl+d快捷方式。我可以用感知Ctrl+D
$(document).on('keydown',function(e) {
debugger;
if((e.keyCode == 68) && e.ctrlKey){
$('.duplicate').trigger('click');
}
});
但看起来Firefox是先捕获Ctrl+D,然后打开一个对话框"编辑书签"
我怎么能先得到中断,然后等我完成后再把它杀死?我不希望我的用户每次输入Ctrl+D时都必须关闭Firefox对话框。
尝试使用e.preventDefault();
:
$(document).on('keydown',function(e) {
//debugger;
if((e.keyCode == 68) && e.ctrlKey){
$('.duplicate').trigger('click');
e.preventDefault();
}
});
请参阅此处的演示页面(在此处编辑演示)。
顺便说一句,覆盖众所周知的键/命令不是一个好的可用性实践。虽然你可以做到这一点,但最好使用另一种组合键。
您尝试过e.preventDefault();
吗?
或者更好的选择——选择不同的组合。当你开始扰乱他们的密钥绑定时,用户通常不喜欢这样。在许多网站上(脑海中浮现的是trello和github),根本没有控制键。您只需键入一个字符就可以调用特殊功能(在github"t"上打开一个页面,您可以在其中键入文件名,它将过滤存储库中的文件)。在大多数情况下,这应该没问题。您通常不需要能够在html body
上键入内容。在启动该功能之前,您只需要确保它们不在输入或文本区域内。
相关文章:
- 将js添加到wordpress中以突出显示css活动菜单
- addListener单击不显示添加标记
- 动态显示/添加具有不同字段的相同表单到页面
- 需要使用javascript在文本框中显示添加结果
- 如何为全球 javascript 的数字显示添加格式
- TinyMCE:如何手动显示添加/编辑链接窗口
- 在鼠标悬停时显示“添加到购物车”不适用于类似的 elementId
- 从通过jQuery显示/添加的输入中保存值
- 如何在按下键时获得第一个选择(防止显示“添加书签”对话框)
- 输入中的条目应在结果字段中逐个显示添加的结果
- 向剑道网格显示添加自定义验证
- 在plot .ly中显示添加和/或删除绘图元素的动画
- Angularjs在保存/创建后隐藏/显示添加按钮
- 动态显示添加的jquery选项卡
- 鼠标悬停显示添加购物车按钮和折扣图像
- 当选择添加时,使购物车数量计数器显示添加的产品
- 当数据使用纯javascript保存在本地存储中时,如何在不同网页的表中动态显示添加的表单元素
- 如何使用数据填充/显示添加的数据表行
- AJAX:如何显示/添加/编辑/删除(CRUD)尽可能多的性能
- 如何在删除最后一行后的最后一个元素显示添加按钮