2010-12-06 11 views
0

スクリプトは正常に動作していますが、IEは「エラーが発生しましたが、ページ上にエラーがあります」というエラーを表示しています。誰でもこのスクリプトの何が間違っているのか教えていただけますか?

(function($){ 
    $.fn.extend({ 
     tabify: function() { 
      function getHref(el){ 
       hash = $(el).find('a').attr('href'); 
       if(hash) 
        return hash.substring(0,hash.length-4); 
       else 
        return false; 
       } 
      function setActive(el){ 
       $(el).addClass('active'); 
       if(getHref(el)) 
        $(getHref(el)).show(); 
       else 
        return false; 
       $(el).siblings('li').each(function(){ 
        $(this).removeClass('active'); 
        $(getHref(this)).hide(); 
       }); 
      } 
      return this.each(function() { 
       var self = this; 

       $(this).find('li>a').each(function(){ 
        $(this).attr('href',$(this).attr('href') + '-tab'); 
       }); 

       function handleHash(){ 
        if(location.hash) 
         setActive($(self).find('a[href=' + location.hash + ']').parent()); 
       } 
       if(location.hash) 
        handleHash(); 
       setInterval(handleHash,100); 
       $(this).find('li').each(function(){ 
        if($(this).hasClass('active')) 
         $(getHref(this)).show(); 
        else 
         $(getHref(this)).hide(); 
       }); 
      }); 
     } 
    }); 
})(jQuery); 
+2

クリックして、エラーの原因を突き止めてください。 – Matchu

+1

エラーコンソール(またはIEの黄色の感嘆符)を使用して、実際に何らかのエラー*何*エラーが発生しているのかを確認してください –

+3

デバッガを試しましたか?または、少なくともJavascriptのエラーコンソールを開いて、「ページ上のエラー」が何であるかを確認してください。 (Firefoxでは、例えば、Ctrl-Shift-Jです。) –

答えて

1

FirefoxにFirebugプラグインをインストールすると、うまく動作しないものや他の多くのことを理解するのに役立ちます。

+7

コメントでなければなりません。そして、それがIEで動作しない場合、Firebugはあまり役に立たないかもしれません... –

+0

私は知っていますが、残念なことに、この投票の前に私はコメントできませんでした...少し奇妙なStackOverflowルールですね。 とにかくFirebugは、コード内に規則的でないものがあるかどうかを表示するのを助けることができます。 – bluish

関連する問題