2017-07-31 1 views
0

私は私のウェブサイトを持って、http://www.yokaproject.com/、私はそれをクリーンアップすることを決めた、私はまだ私は間違いがないが、上部のナビゲーションにはアンカータグが表示され、jqueryをクリックしてdiv#コンテナにロードします。私の問題は、毎回電話が2倍になり、ますます多くのコンテンツが入れ子になっていることです。アートを2回連続してクリックするだけです。私は最後の月曜日以来、これに行ってきたので、どんな助けにも感謝しています。あなたはただ、私のサイトを訪問することができますHTMLとCSSでより良い表情をしたい場合はここに私の機能AJAXネストコンテンツの電話で

$('.header a').on('click', ajaxLoad); 

function ajaxLoad(e) { 
    e.preventDefault(); 
    var url = $(this).attr("href"); 
    var that = $(this); 
    that.off('click'); // remove handler 
    $.ajax({ 
     url: url, 
     dataType: "html", 
     type: "GET", 
     cache: false 
    }).done(function(data){ 
     $("#container").html(data); 
    }); 
}; 

です。私はそれが大規模になると、将来はgithubでそれを置くことを予定していますが、今は必要ありません。

  • あなたが今
+0

'always'関数では、コールバックで再びajaxLoad関数を呼び出しています。 –

+0

それはそれを修正しました –

+0

それを修正しましたか?私の提案や最初の答え? –

答えて

0
that.on('click', ajaxLoad); // add handler back after ajax 

私のウェブサイト上で完全なコードを表示することができ、コードのこの行は、クリックハンドラにAJAX応答が来るたびに再接続します。 thatをクリックするたびに、ajaxリクエストが作成されます。

+0

7分後に回答がありましたら、この回答を受け入れます。 –

+0

私はこの回答を受け入れなくてはならず、アートタブから他のタブからアートタブに戻る –

0

あなたの間違いは、次のとおりです。 always機能では、あなたが再びコールバックでajaxLoad関数を呼び出しています!それで、それは複数回呼びます。コードからその行を削除してください。

+0

これで私のウェブサイトを見ることができます。コードは上記のコードで完全に –

+0

です。乾杯..!! –

+0

まだ問題はない、自分のウェブサイトをチェックする –