2011-12-16 7 views
0
$("#listPanels a").live("click",function(e){ 
     e.preventDefault(); 
     can_changePn = false; 
     var tt = $(this).attr("href"); 
     var pos = $(tt).offset().top; 
     var ctop = $('#contentPanel').scrollTop(); 
     alert(tt+" : "+pos+" : "+ctop); 
     $('#contentPanel').animate({ 
      scrollTop: (ctop+pos-50)}, 
     500,function(){ 
      can_changePn = true; 
     }); 
     return false; 
    }); 

オフセットのdivを検出することはできません、しかしIE7で、それはコードが$(tt).offset().top;を乗り越えることができないようだ、私は見当もつかない問題が何であるかについては、私もoffsetの代わりにpositionを使用しようとしましたが、結果は同じです。alertその行にしようとするとアラートが開かなくなってしまいます。何か案は?私はdiv要素にスクロールするには、上記のコードを使用して、それはすべてのブラウザでうまく動作しないIE7

答えて

1

属性のオフセットを要求しています。いや、属性は実際のdivのidである、と私はそのdiv要素のオフセットを見つけるためにしようとしています

var tt = $(this).attr("href");   
var pos = $(this).offset().top; 
+0

:これに

var tt = $(this).attr("href"); var pos = $(tt).offset().top; 

:私はあなたがこれを変更したいと思います。しかし、あなたに感謝します。IE7はidだけでなく完全なURLに戻るようですが、他のすべてのブラウザでは、id ex: '#panel_00'が返されます。見つけた – Bluemagica

+0

申し分なく、私は助けることができてうれしい!がんばろう。 –

関連する問題