2011-07-12 17 views
0

私はこれを理解することができません。このjqueryコード内の何かが私のサイトを壊しています:このjqueryで何が問題になっていますか?

$('.menu li').click(function() { 
     nextslide = $(this).attr('id').replace('m_', ''); 

     if ($('#m_till').hasClass('active')) 
      currentslide = 'till'; 
     else if ($('#m_receipts').hasClass('active')) 
      currentslide = 'receipts'; 
     else 
      currentslide = 'support'; 

     slide_right(currentslide, nextslide); 
    } 

このコードを削除すると、私のサイトは正常に動作します。したがって、この関数内で問題を引き起こしているものでなければなりません。

+0

あなたのHTMLは何ですか? – amurra

+0

firebug ........ – Bozho

+1

FireBugをインストールし、これをFireFoxで実行し、コンソールに表示されるエラーを確認します。 –

答えて

10

それが終わり

$('.menu li').click(function() { 
     nextslide = $(this).attr('id').replace('m_', ''); 

     if ($('#m_till').hasClass('active')) 
      currentslide = 'till'; 
     else if ($('#m_receipts').hasClass('active')) 
      currentslide = 'receipts'; 
     else 
      currentslide = 'support'; 

     slide_right(currentslide, nextslide); 
    }); 
+0

盲目の問題を修正することに関して、これは私の最高の推測です。 –

1
$('.menu li').click(function() { 
    nextslide = $(this).attr('id').replace('m_', ''); 

    if ($('#m_till').hasClass('active')) 
     currentslide = 'till'; 
    else if ($('#m_receipts').hasClass('active')) 
     currentslide = 'receipts'; 
    else 
     currentslide = 'support'; 

    slide_right(currentslide, nextslide); 
} 

//close it 
); 
//close it 
0

で行方不明theresの);のように見える任意のJavaScriptをトラブルシューティングする一番簡単な方法は、変数をチェックし、その後、変数に部品を割り当てることです。

var a = $('.menu li'); 
a.click(); 

とより多くの例:

var a = $(this); 
var b = a.attr('id'); 
var c = b.replace('m_', ''); 

それはあなたの構文が正しいと仮定すると、存在しない何かを参照している可能性があります。 ChromeデベロッパーツールまたはFirefox Firebugを使用して、その変数を破棄して値を確認します。

関連する問題