Мне нужна функция, чтобы быть публичной, поэтому я могу назвать ее внутри любого селектора 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";
});
});
Удаляют обертку и вызов, и скобки ссылаться на него, как и любой нормальной функции. –
Это правильно. Самозапускаемые функции не могут быть вызваны нигде в javascript. – mhodges
Что касается «почему», это потому, что выражение функции * с именем привязывает имя к телу самой функции, поэтому оно может использоваться только в этой функции. –