1

別の関数のコールバック内のメソッドを介して変数を送信する必要があります。変数は、クリックされたナビゲーション リンクである必要があります。弱々しく説明する代わりに、ここにコードがあります。論理はオフですが、アイデアは得られます。

/* Make a variable out of which link was clicked */

$('nav a').click(function(){
    var $nav = $(this);
});

$('nav').localScroll({
    duration: 500,
    easing:'easeOutSine',
    axis:'xy',
    onAfter: function(){

/* send that variable through aktivator() in the callback of localScroll() */

        $nav.aktivator();
    }
});
4

2 に答える 2

2

$navより高いスコープに入れる:

var $nav;

$('nav a').click(function(){
    $nav = $(this);
});

$('nav').localScroll({
    /* ... */
    onAfter: function(){
        $nav.aktivator();
    }
});

これで、両方の領域がそれにアクセスしたり、そのメソッドを呼び出したりできるようになりました。

于 2012-05-21T23:31:21.097 に答える
1
var $nav; //higher

$('nav a').click(function(){
    $nav = $(this);
});

$('nav').localScroll({
    duration: 500,
    easing:'easeOutSine',
    axis:'xy',
    onAfter: function(){
        $nav.aktivator(); //available
    }
});
于 2012-05-21T23:32:55.590 に答える