У меня есть функция, которая возвращает объект. в объекте у меня есть две функции, чтобы показать всплывающее окно и закрыть его. он работает в родительской функции, но это не из-за границы .. это не правильный способ назвать это ... иначе как я могу вызвать функцию obj из стороны?Нельзя ли назвать функцию obj?
моя функция:
var popupHandler = function(handler,msg,popUp){
msg = msg == "help" ? "help" : "results"
$(handler).click(function(){
popObj.showPop(); //works
})
$('.cls-how2play').click(function(){
if(msg == 'help') popObj.closePop(); //works
});
var popObj = {
showPop : function(){
if(!(popUp).is(':visible')) $(popUp).fadeIn().children().find('.'+msg).show().siblings().hide();
},
closePop : function(){
$(popUp).fadeOut()
}
}
return popObj;
}
от вызова находящиеся, как это:
$('.ui-footer').click(function(){
var closeIt = popupHandler();
closeIt.popObj.closePop() }) //not works.. why?
}
любой может помочь мне правильный способ вызова функции OBJ из внешней функции, возвращающей?
спасибо.
'closeIt' уже является ссылкой на' popObj', насколько я могу видеть, из-за 'return popObj;'. –
'msg = msg === 'help' || 'results'; ' –
@roXon:' msg === 'help'' возвращает 'true'. Таким образом, вы получаете 'msg', либо являющийся« истинным », либо« результатом ». –