0

を使用して$.getScript、自分のプラグインに jQuery プラグインをロードしています。問題は、ロードされたプラグインにしかアクセスできず、$.getScriptメソッドのコールバック関数でオブジェクトをインスタンス化できないことです。

コールバック関数の外でインスタンス化を行う方法があるかどうか知りたいです。次のコードで実際の実装を確認してください。

init = function( options ) {
    $.getScript('javascript/lib/fullcalendar-1.5.3/fullcalendar/fullcalendar.js', function() {
        // Instantiation is require to be done here
        self.fullCalendar(options);
    });

    self.opt = $.extend(true, {}, defaults, options);
    self.data('settings', self.opt);
    if (typeof options.test === 'function') {
        // I would liked to do this here but at this point fullcalendar is not defined
        self.fullcalendar(options);

        var tests = test.call(self, 3, 1);
        options.test.call(self, tests, null);
    }
}
4

1 に答える 1

0

グローバル変数を作成し、fullCalendar を開始するたびにカレンダーを割り当てます。

init = function( options ) {
    var myCalendar;

    $.getScript('javascript/lib/fullcalendar-1.5.3/fullcalendar/fullcalendar.js', function() {
                        // Instantiation is require to be done here
        myCalendar = self.fullCalendar(options);
    });

    // Test full Calendar
    var viewName = myCalendar.fullCalendar('getView').name;
    alert(viewName);
}

私はこれを試していません。しかし、これは主なアイデアにすぎません。これが役立つことを願っています。

于 2012-06-29T16:53:25.763 に答える