當我點擊一個li-element,其中的class-attribute包含「disabled selected」時,disabled被取值爲「true」,但在調出最後一個if語句之後,該函數被調用。爲什麼布爾函數的值在退出函數之後發生了變化?
var disabled = false;
$("li").click(function() {
if ($(this).attr("class") == "disabled selected") {
disabled = true;
}
});
if (disabled) {
alert("disabled is true");
}
if (!disabled) {
alert("disabled is false");
}
如果是具有'如果(禁用)...'在其聲明的代碼?在你的例子中,這些檢查將在遇到它們時立即運行;在onclick函數之前。 – 2012-02-08 10:19:21
您是否可以添加您的html代碼,或者甚至更好,在此處重現錯誤:http://www.jsfiddle.com – Niklas 2012-02-08 10:20:46
您是否在單擊之後顯示'if(!disabled)'塊內部的警報? – nnnnnn 2012-02-08 10:21:00