0

名前空間で通常の関数を呼び出す方法

$(document).ready(function() {
  Timeline.init();
  Timeline.highlight_arrow();
  Timeline.arrows();

});

Timeline.arrows = (function() {
    function display_arrows(pos) {
    }
}());

Timeline.arrows 内から dislay_arrows を呼び出そうとしています。Timeline.arrows.display_arrows() を試しましたが、パブリック メソッドである必要がありますか?

4

2 に答える 2

0

このように実装する必要があるかもしれませんが、

ライブデモ

$(document).ready(function() {
    function NS_TimeLine(){

        this.init = function(){
         alert("init");   
        }

        this.highlight_arrow = function(){
         alert("init");   
        }

    }                      

var TimeLine = new NS_TimeLine();
TimeLine.init();

});
​
于 2012-10-23T16:30:09.573 に答える
0

問題を理解した場合は、すぐに実行される関数から関数を戻すだけです。

Timeline.arrows = (function() {
    return function display_arrows(pos) {
        //'arrows' implementation here'
    }
}());

作業デモ: jsBin

このように、あなたの /result/ は(function() { /*...*/}())関数display_arrowsであるため、arrowson のプロパティに対して設定されTimelineます。

Timelineオブジェクトを使用する前に誰かがオブジェクトを宣言したと仮定しています。

于 2012-10-23T16:40:44.787 に答える