js实现屏蔽默认快捷键调用自定义事件示例

(编辑:jimmy 日期: 2024/10/10 浏览:2)

具体如何屏蔽更多的快捷键可以自行google搜索。
这里要说的是如何屏蔽后去执行自定义的事件。

这里为了方便使用的Kibo做例子,使用google搜索出来的结果一般都是javascript原生实现,很简单的,这里不做介绍。

这里是实现了在一个textarea中enter进行保存的例子,屏蔽掉了原来的回车事件。
代码如下:
复制代码 代码如下:
//键盘监听
var areaKey = new Kibo($("#aac010")[0]);
areaKey.down('enter',doSave);
function doSave() {
event.keyCode = 0;
event.returnValue = false;
setTimeout(save, 300);
return false;
}

屏蔽js原有事件一般是keyCode=0,returnValue=false,return false;来实现的,关键是如何调用自定义的方法,如上面的save方法,如果直接把save方法写到这里,由于执行save需要一定时间,短时间的没有返回false,会导致enter原有事件的触发,不能起到屏蔽的作用,所以这里使用setTimeout来调用自定义的方法。让returun及时返回,这样就不会触发原有的事件。

具体原因并不清楚,如果有人有更好的方法,或者知道原因可以留言,谢谢~~~

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。