2011-01-26 3 views
0

私は、サイト全体のページに存在する可能性があると知っている要素#document h1, #content h2の配列を持っています。いくつかのページはすべてではありません。Check Elementが存在する前にCufonを適用する

私がやっていることは、配列を繰り返して要素が存在するかどうかを調べることです。要素が存在しない場合は配列からスプライスします。次に、toStringメソッドを使用して残りの要素をCufonに渡します。

<script> 
    $(function(){ 

     var eurostyle = ["#container h1","#content h2","#content h3","#content h4","#content .sidebar ul span", "#sitenav ul.menu span"]; 

     for (i=eurostyle.length-1;i >=0;i--) { 
      if (!$(eurostyle[i]).length) { 
       eurostyle.splice(i,1); 
      } 
     } 

     Cufon.replace(eurostyle.toString(),{fontFamily: "Eurostile"}); 

    }); 
</script> 

この手法は価値があるのですか?
パフォーマンスを向上させるか、各要素が存在するかどうかを確認して、実際にブラウザを遅くしますか?

答えて

0

Cufonはすでにjqueryのセレクタエンジンを使用しているかどうかをチェックしています(存在するものと仮定します)。セレクタが簡単になればなるほど、使用する処理能力は低くなります。

残念ながら、このパスをたどると非常に厄介なマークアップにつながる可能性があります。

あなたのコードは、とにかくcufonと複製するだけです。

+0

ああ、Cufonは既に要素の存在をチェックしていますか?それでは、これは無意味です。ありがとうございました! – mindwire22

+0

問題ありません。がんばろう – Jason

関連する問題