互聯網瀏覽器不支持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