私はオブジェクトを返す関数を持っています。オブジェクトには、ポップアップを表示して閉じる2つの関数があります。親関数内で動作しますが、外からではありません。それを呼び出す正しい方法ではありません。elseどうすれば外側から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;
}
からは次のようにouside呼び出す:
$('.ui-footer').click(function(){
var closeIt = popupHandler();
closeIt.popObj.closePop() }) //not works.. why?
}
いずれかは私に返す関数の外側からOBJ関数を呼び出すための正しい方法を助けることができますか?
ありがとうございました。
'close pop'は、' return popObj; 'のために私が見る限り' popObj'への参照です。 –
'msg = msg === 'help' || 'results'; ' –
@roXon:' msg === 'help''は 'true'を返します。だから 'msg'は' true'か 'results''のいずれかになります。 –