2016-09-20 19 views
1

JavascriptとJQueryを使用して簡単な画像スライダーを作成しました。このコードはChromeでローカルとオンラインの両方でSafariで正常に動作していますが、 Chromeではコンソールにエラーが表示されないため、正確な問題を特定することが難しいと感じています。私はおそらくスライダが最初にAjaxになりますが、スクリプトを実行すると画像がSafariやChromeにロードされないように、スクリプトを別の方法で使用しなければならないという問題を読んでいることに気づきます。 乾杯。あなたはおそらく、私が思うタイムアウトタイマーをクリアしていないChromeでJavascriptコードが実行されていません

<body> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
    <div id="slider"></div> 
    <script src="slider.js" type="text/javascript"></script> 
</body> 

そしてJS

slideShow(); 
var imgArray = [ 
    'Images/image1.jpg', 
    'Images/image2.jpg', 
    'Images/image3.jpg', 
    'Images/image4.jpg', 
    'Images/image5.jpg', 
    'Images/image6.jpg', 
    'Images/image7.jpg', 
    'Images/image8.jpg' 
    ], 
curIndex = 0; 
imgDuration = 5000; 

function slideShow() { 
$("#slider") 
    .fadeOut('slow', function() { 
     var img = $("<img />") 
      .attr('src', imgArray[curIndex]) 
      .on('load', function() { 
       $("#slider") 
        .html(img) 
        .fadeIn('normal', function() { 
         curIndex++; 
         if (curIndex == imgArray.length) { 
          curIndex = 0; 
         } 
         setTimeout(slideShow, imgDuration); 
        }); 
      }); 
    }); 
} 
+0

サーバーを使用してページをロードしているのですか、またはosファイルシステムだけをロードしていますか? –

+0

私はChromeでopenを使用してファイルをローカルにロードしようとしましたが、ウェブページにもアップロードしてアップロードしませんでした。 –

+0

あなたのコードは本質的にすべてのブラウザで動作します。 do(テストするにはjsfiddleで)は '$(function(){..yy code here here}} ')でjs全体をラップすることですが、それはjsfiddleの任意のブラウザで動作するようにすることでした。それが役に立っているかどうかを確認してください –

答えて

0

は、私は、次のHTMLコードを持っています。

+0

なぜクリアする必要がありますか? –

関連する問題