首页 > 编程 > JavaScript > 正文

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

2019-11-20 22:38:34
字体:
来源:转载
供稿:网友
具体如何屏蔽更多的快捷键可以自行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及时返回,这样就不会触发原有的事件。

具体原因并不清楚,如果有人有更好的方法,或者知道原因可以留言,谢谢~~~
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表