第一次遇到这样的问题:
我在头部页面上的搜索上用到了enter事件的监听,但是在其它页面中也有一个页面
用到了这个事件,我是分别写在两个js中的。但是,并不是enter事件,另一个是
esc 的触发事件。
然而在操作过程中,发现,只要两个页面碰到一起,就会出现:搜索按钮的enter事件
失灵,而ESC事件却能用。求解如何解决这一冲突问题,当在一个页面时都可以触发。
下面是function:
/**ENTER 事件触发搜索**/
document.onkeydown=function(event){
var e = event || window.event || arguments.callee.caller.arguments[0];
if(e && e.keyCode==13){ // enter 键
search();
}
};
这种方法怎么写几乎都一样,求大神指点!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
这样添加给对象事件最后一个有效,前一个会被覆盖,用attachEvent(IE)或者addEventListener进行添加。。不要使用xxx.onxxxx
function docKeydown(event) {
var e = event || window.event || arguments.callee.caller.arguments[0];
if (e && e.keyCode == 13) { // enter 键
search();
}
};
document.attachEvent ? document.attachEvent('onkeydown', document) : document.addEventListener('keydown', docKeydown, false);