我有一點點這樣的代碼:爲什麼Internet Explorer的停止功能後,當使用event.preventDefault()或返回false
$("input#checkbox").change(changeCheckbox);
function changeCheckbox() {
var inputCheck = $("input#checkbox"),
button = $("input#button");
if (inputCheck.is(":checked")) {
button.hide();
} else {
button.show();
}
}
在所有現代瀏覽器這項工作完善和IE 8
但當我用這一個與event.preventDefault();
:
$("input#checkbox").change(changeCheckbox);
function changeCheckbox(event) {
event.preventDefault(); // <-- Here
var inputCheck = $("input#checkbox"),
button = $("input#button");
if (inputCheck.is(":checked")) {
button.hide();
} else {
button.show();
}
}
或者我設置return false;
$("input#checkbox").change(changeCheckbox);
function changeCheckbox() {
var inputCheck = $("input#checkbox"),
button = $("input#button");
if (inputCheck.is(":checked")) {
button.hide();
} else {
button.show();
}
return false; // <-- Here
}
則函數僅一次,我在(只)的Internet Explorer 8
多做自認倒黴有人能向我解釋,爲什麼出現這種情況?
,我有很多其他的功能,並使用與event.preventDefault();
和return false;
類似的代碼在年底有好......
我使用這個jQuery的版本:jquery_1.10.1.min.js
提前感謝!
您的意思是處理程序不會再次觸發,隨後的點擊將不會執行任何操作?請更具體地說「*我什麼都不能做*」。 – Bergi
@Bergi - 在這個例子中,我不能在調用函數後檢查複選框一次 – aldanux
@ dqf13g32g那麼,這是'type =「複選框的默認操作 - 它在checked和unchecked之間切換。防止它指示它不要改變。或者,我誤解了你的評論? –