我需要一個函數作爲一個公共,所以我可以在任何jQuery選擇器內調用它, 這裏是代碼。 注意:控制檯說checkFeat fn沒有定義。訪問jquery選擇器內的函數
(function checkFeat() {
$(".feat").each(function(){
if (!$(this).hasClass("active")) {
$(this).children("P").css("display","none")
}
else
{
$(this).children("P").css("display","block")
}
});
}());
$(".feat h5").on("click",function(){
$(this).parent(".feat").addClass(function(index ,currentClass){
checkFeat(); //console says this function is not defined why ?!!
return "active";
});
});
拆除包裝和調用括號並調用它像你將任何正常功能。 – 2016-07-25 18:10:00
這是正確的。自調函數不能從JavaScript中的任何其他地方調用。 – mhodges
至於「爲什麼」,這是因爲具有名稱的函數*表達式將名稱作用於函數本身的名稱,所以它只能在該函數中使用。 – 2016-07-25 18:16:46