0

1 つのクラスの marginTop が -200px であるという条件の下で別のクラスがクリックされたときに、あるクラスをトリガーする if else ステートメントを作成しようとしています。

このifステートメントを使用してみましたが、うまくいきません:

    if ($('.logintrigger').click() && $('.register').css('marginTop') === '-200px') {
        $('.registertrigger').toggle(
            function () {$('.register').stop().animate({'marginTop':'-0px'},200); $('#opencloseregister').css({'backgroundPosition':'-20px 0px'});}
        );
    }

助言がありますか???

4

5 に答える 5

2

jqueryを使用した適切なifelseの例を使用してjsfiddleを作成しました。http://jsfiddle.net/RQ75m/

$(".logintrigger").click(function(){

    if( $(".register").css("margin-top") == "200px" ){

       $(".registertrigger").show(); //toggle function here
       return false; //so that the page doesn't refresh

    } else {

       $(".registertrigger").hide();
       return false; //so that the page doesn't refresh

    }

});​
于 2012-04-20T18:38:14.993 に答える
2

表現を修正する必要があるようです。問題は、イベント ハンドラーをアタッチする必要があるときに、要素が「クリック」されたかどうかを確認しようとしていることです。

$('.loginTrigger').click(function()
{
    if('.register').css('marginTop') === '-200px')
    {
        // Do Stuff
    }
});
于 2012-04-20T18:26:42.707 に答える
1

クリックイベントを呼び出していますが、クリックイベントにイベントを追加したいと思います...

$('.logintrigger').click( function(e){
  if($('.register').css('marginTop') === '-200px'){
    $('.registertrigger').toggle();
  }
});
于 2012-04-20T18:26:26.767 に答える
1

を呼び出すと$('.logintrigger').click()、クリックイベントがトリガーされます。そのはず:

if ($('.logintrigger').click(function(){
   if ($('.register').css('marginTop') === '-200px') {
        $('.registertrigger').toggle(
            function () {
               $('.register').stop().animate({'marginTop':'-0px'},200);
               $('#opencloseregister').css({'backgroundPosition':'-20px 0px'});
            }
        );
    }
})
于 2012-04-20T18:27:04.567 に答える
0
$('.logintrigger').on('click', function(){

    if($('.register').css('marginTop')==='200px') {

        $('.registertrigger').toggle( function () {

            $('.register').stop().animate({'marginTop': 0 },200);
            $('#opencloseregister').css({'backgroundPosition':'-20px 0px'});

        });

    }

});
于 2012-04-20T18:28:26.977 に答える