2017-03-19 12 views
-2

誰かがこのコードでエラーを見つけられますか?この壊れたjQueryコードで実行すると、ボディのスタイリング以外の私のウェブサイト全体が消えます。私のウェブサイトは、HTML、CSS、JQコード全体を投稿するには大きすぎます... 以下のコードで私がしたいことのためのより良いコードに関する提案は大歓迎です。コードは最初に.Box1、.Box2 ...のドラッグをアクティブにします。次に、アニメーションを実行して別の位置に移動します。私はちょうど.smartBoxをクリックしてポイントAに移動し、ポイントBに再びクリックすると、ポイントBに戻ります。jQueryでエラーが発生した場合... Elseステートメント

ありがとうございます。

/* .smartBox on click: actiave dragging */ 
 
    var smartBoxClicked = false; 
 
    
 
    
 
    if(smartBoxClicked = false) { 
 
     
 
     $('.smartBox').click(function() { 
 
      $('.Box1, .Box2, .Box3, .Box4').draggable(); 
 
      $(this).animate({'top': '1%'}, 1000).animate({'left': '48%'}, 1000); 
 
      smartBoxClicked = true; 
 
     } else { 
 
      $('.smartBox').click(function() { 
 
       $(this).animate({ 
 
        'top': '370px' 
 
       }, 1000).animate({'left': '32.26%'}, 1000); 
 
       smartBoxClicked = false; 
 
     }); 
 
    }); 
 
    }; 
 
    
 
    /* .smartBox is a div with an image */
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+1

あなたの中括弧は、すべての – NineBerry

+1

構文エラーがたくさんあります'=='は値を検証し、異なるデータ型でも動作する '==='厳密な値の検証は異なるデータ型では動作しません – Psi

+0

'の=で一致していない – Baruch

答えて

0

それは "=" は、割り当てた値です

var smartBoxClicked = false;  

if(smartBoxClicked == false) { 
    $('.smartBox').click(function() {   
     $('.Box1, .Box2, .Box3, .Box4').draggable(); 
     $(this).animate({'top': '1%'}, 1000).animate({'left': '48%'}, 1000); 
     smartBoxClicked = true; 
    }); 
}else { 
    $('.smartBox').click(function() { 
     $(this).animate({ 
      'top': '370px' 
     }, 1000).animate({'left': '32.26%'}, 1000); 
     smartBoxClicked = false; 
    }); 
}; 

でなければなりません "==" 比較のためにすべきであり、また、あなたの中括弧が一致しませんでした。トグルクラスを使用して、この状況では

+0

私はそれを見たとは信じられません...:Dありがとう – Cass

0

は非常に簡単です:

.animated{ 
    top: 1%; 
    left: 48%; 
} 
.smartBox 
{ 
    transition-duration: 1s; 
} 

とjQuery:

$('.smartBox').click(function() { 
     $(this).toggleClass('animated'); 
} 
+0

アイデアありがとう、私はtoggleClass =]に切り替える可能性もあります。 – Cass

+0

あなたを歓迎します。行きたい場合は、 'if(smartBoxClicked == false)'は必要ありません。より速く、よりクリーンです: 'if(!smartBoxClicked)'。 –

関連する問題