3

動作しない次のコードについてサポートが必要です。

var timeoutID = 0;
var currentImage =0;//最初の画像はarrImages配列の位置0です
var arrImages = [blablabla画像URLの配列];
関数slideShow()
{{
   if($('#myImg')。complete)// <-------これは、未定義であるため失敗する場所です。
   {{
      // curentImageは、画面上の画像配列キーを記憶するグローバル変数です
      var nextImage = currentImage + 1;

      //arrImagesは画像のURLの配列です
      if(nextImage> = arrImages.length){nextImage = 0;}

      $('#myImg')。attr('src'、nextImage);

      clearTimeout(timeoutID);
      //前の画像が読み込まれた後、毎秒画像を変更します
      timeoutID = setTimeout( "slideShow()"、1000);
   }
   そうしないと
   {{
      $('#myImg')。load(slideShow);
   }
}

基本的に、画像がロードされた後にカウンターが開始するという条件で、毎秒#myImgのsrcを変更したいと思います。

* Stack Overflowのテキストエディタのコードボタンが嫌いです!

4

2 に答える 2

16

「完全」は、ネイティブ JavaScript オブジェクト用です。したがって、jQuery から JavaScript オブジェクトを取得する必要があります。お気に入り、

$('#myImg')[0].complete

また

$('#myImg').get(0).complete
于 2011-12-23T07:07:51.467 に答える
2

私の記憶が正しければ、画像がロードされると幅と高さが取得されます。画像の場合は幅を確認できると思います。それが 0 である限り、画像はロードされません。

于 2011-03-23T11:20:55.517 に答える