1

$sliderPane.click();最後のステートメントにあるを作成しelseて、最初のステートメントを実行することは、どのように可能ifですか?

どんな賢いアイデアでも大いに感謝します。

$tabTwitter.on('click', function () {

    if ( twitterOpen == true ) {

        twitterOpen = false;
        $panelTwitter.fadeOut(500); 

        $sliderPane.animate({
            "left" : 0
        }, 500, function() {
            $sliderPane.removeAttr('style');                     
        });

    } else if ( facebookOpen == true ) {

        facebookOpen = false;
        $panelFacebook.fadeOut(500); 

        twitterOpen = true;
        $panelTwitter.fadeIn(500);

    } else {

        twitterOpen = true;
        $panelTwitter.fadeIn(500);

        $sliderPane.css({
            "left":0,"cursor":"pointer"
        }).animate({
            "left" : "-490px"
        }, 500, function() {
            $('body,html').animate({
                scrollTop: headerHeight - 69
            }, 800);
            return false;
        }).click();                 

    }

});
4

3 に答える 3

1
var clickHandler = function () {

    if ( twitterOpen == true ) {

        twitterOpen = false;
        $panelTwitter.fadeOut(500); 

        $sliderPane.animate({
            "left" : 0
        }, 500, function() {
            $sliderPane.removeAttr('style');                     
        });

    } else if ( facebookOpen == true ) {

        facebookOpen = false;
        $panelFacebook.fadeOut(500); 

        twitterOpen = true;
        $panelTwitter.fadeIn(500);

    } else {

        twitterOpen = true;
        $panelTwitter.fadeIn(500);

        $sliderPane.css({
            "left":0,"cursor":"pointer"
        }).animate({
            "left" : "-490px"
        }, 500, function() {
            $('body,html').animate({
                scrollTop: headerHeight - 69
            }, 800);
            return false;
        }).click(clickHandler);                 

    }

};

$tabTwitter.on('click', clickHandler);
于 2012-06-13T23:49:16.237 に答える
0

'if'はコードブロックの最初のステートメントであるため、常にトリガーの使用を試みることができます。

于 2012-06-13T23:43:50.140 に答える
0

名前付き関数に分割します。if関数を最初に呼び出します。終わり。

于 2012-06-13T23:46:56.813 に答える