营口网站建设单位,网站架构设计师是做什么的,网上免费发布信息,微信如何做公众号负责公司的一个b2c平台#xff0c;头部那里有个搜索查询的功能#xff0c;根据用户输入的内容按回车键也会跳转到响应的页面#xff0c;后来在ie浏览器下惊奇的发现按回车键的同时它也会触发底部的邮箱订阅的button事件#xff0c;开始以为是其它的地方用到了回车键从而冲突…负责公司的一个b2c平台头部那里有个搜索查询的功能根据用户输入的内容按回车键也会跳转到响应的页面后来在ie浏览器下惊奇的发现按回车键的同时它也会触发底部的邮箱订阅的button事件开始以为是其它的地方用到了回车键从而冲突了好来发现没有其它地方用到找了好久都找不到原因后来百度了一下找到了相关的问题描述
说是Button才会有这个问题如果是a标签呢我也做了实验a标签是不会有这样的问题的只有button会有
那该怎么解决呢其实解决办法还是挺多的比如可以把button换掉我采用的是阻止keydown事件的默认行为preventDefault的确解决问题。
1.阻止浏览器的默认行为 function stopDefault(e) {
//如果提供了事件对象则这是一个非IE浏览器
if(e e.preventDefault) {
//阻止默认浏览器动作(W3C)
e.preventDefault();
} else {
//IE中阻止函数器默认动作的方式
window.event.returnValue false;
}
return false;
}
2.停止事件冒泡 function stopBubble(e) {
//如果提供了事件对象则这是一个非IE浏览器
if(e e.stopPropagation) {
//因此它支持W3C的stopPropagation()方法
e.stopPropagation();
} else {
//否则我们需要使用IE的方式来取消事件冒泡
window.event.cancelBubble true;
}
return false;
} 具体应用 script typetext/javascript
function enter_down(form, event) {
if(event.keyCode 13) {
stopDefault(event);
submitForm(form,actionDiv);
}
}
function stopDefault(e) {
//如果提供了事件对象则这是一个非IE浏览器
if(e e.preventDefault) {
//阻止默认浏览器动作(W3C)
e.preventDefault();
} else {
//IE中阻止函数器默认动作的方式
window.event.returnValue false;
}
return false;
}
/script input typetext nameappGrpName_s idappGrpName_s onkeydownenter_down(this.form, event);/
这样就可以解决ie下面按回车键触发button click事件了 转载请注明前端录»ie下按keydown事件会触发button script srchttp://www.wozhuye.com/index.php?mdiggcindexainitid20-34-2/script