互联网浏览器不支持JavaScript中的e.preventDefault。如果不是什么原因,有什么选择。请不要提示任何jQuery,mootools的答案。互联网浏览器支持e.preventDefault
if (!e) e = window.event;
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnValue = false;
}
互联网浏览器不支持JavaScript中的e.preventDefault。如果不是什么原因,有什么选择。请不要提示任何jQuery,mootools的答案。互联网浏览器支持e.preventDefault
if (!e) e = window.event;
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnValue = false;
}
好吧,如果你坚持:
event.preventDefault
不起作用,因为它不存在IE。
为什么它不存在,人们将不得不为MS工作。但总的来说,IE并不总是符合标准。
的documentation说,你可以设置event.returnValue
:
false
源对象上事件的默认动作被取消。
,并进一步:
备注
此属性的值接管该函数返回值,如通过Microsoft JScript中return语句的优先级。
标准信息
没有公共的标准,适用于该属性。 [event.preventDefault()函数的
我使用IE 7和event.returnValue = false;也似乎没有工作。添加我的代码上面看看你是否可以指出一些东西。 – 2010-12-18 18:05:41
@sushil bharwani:你必须做'if(e.preventDefault)'(没有括号)。你不想调用这个函数,你想测试它是否被定义。 – 2010-12-18 18:11:23
哦,我的坏。你真是太棒了!谢谢 – 2010-12-18 18:12:39
它不支持它,因为有人在微软决定等等。
另一种是event.cancelBubble。
取消冒泡防止默认操作? – 2010-12-18 17:52:54
我不认为event.cancelBubble被替换为event.preventDefault ...它可以用于e.stopPropogation。 – 2010-12-18 17:53:42
可能重复在IE中不工作。任何帮助?](http://stackoverflow.com/questions/1000597/event-preventdefault-function-not-working-in-ie-any-help)(有趣的是,这是第一次打时,搜索事件preventdefault在即'' – 2010-12-18 17:41:18
@Felix我更倾向于为什么它不工作,如果它以某种方式与IE事件模型相关。此外链接谈论更多关于mootools和jQuery,我没有干扰。 – 2010-12-18 17:43:50
但接受的答案不是框架特定的。 – 2010-12-18 17:55:11