2011-12-05 7 views
0

注:メニュー項目の上にマウスを置くと、画像がロードされるまで登録されないことに気付きました。これがなぜか分かりませんJavascript Slideshow私のサイトを遅らせる

私のサイトのインデックスページにイメージスライドショーを追加しました。ついにそれを稼働させてアップロードしました。スライドショーでは5枚の画像が表示されますが、読み込み時間がかなり長くなり、メニューをクリックしようとするとかなりの遅延があります。ここで

は、ファイルの先頭にコードです:

<script type="text/javascript"> 
<!-- 
var image1=new Image() 
image1.src="image1.JPG" 
var image2=new Image() 
image2.src="image2.JPG" 
var image3=new Image() 
image3.src="image3.JPG" 
var image4=new Image() 
image4.src="image4.JPG" 
var image5=new Image() 
image5.src="image5.JPG" 
//--> 
    </script> 

とページの本文内のコード:

<script type="text/javascript"> 
      <!-- 
      //variable that will increment through the images 
      var step=1 
      function slideit(){ 
      //if browser does not support the image object, exit. 
      if (!document.images) 
       return 
      document.slide.src="images/image"+step+".JPG" 
      if (step<5) 
       step++ 
      else 
      step=1 
      //call function "slideit()" every 2.5 seconds 
      setTimeout("slideit()",2500) 
      } 
      slideit() 
      //--> 
      </script> 

ページは今とても遅い理由を任意のアイデア?

ありがとうございます!

+0

タイマーは2500ms、つまり2.5秒です。これはどういう意味ですか? –

+0

P.S.、1996年以来、 "<! - "を使用してJavaScriptブロックを非表示にする必要はありませんでした。 –

+0

画像のサイズを小さくすると役立つことがあります。 – Tarik

答えて

0

多くの理由が考えられます。

スライドショーは、起動前にすべての画像がロードされるのを待ちますか?その場合、可能であれば、スライドショースクリプトをHTMLページの一番下に置くことを検討してください。そうすれば、他のすべてのコンテンツが最初に読み込まれます。

スライドショーはアニメーション化されていますか?画像は2500秒ごとに画面をゆっくりと移動しますか?この場合、使用しているコードのsetTimeout()関数の値が小さすぎる可能性があります。それを上げたり、それを危険にさらしたり、CSS3トランジションを使ってアニメーション化することを検討してください。

関連する問題