2012-04-07 6 views
2

imgタグからsrc属性を毎秒JQueryで変更しようとしています。 Google Chromeでうまく動作し、毎秒新しい画像が得られます。しかし、Firefoxや私のiPadで動作しません。一度だけイメージを変更します。ローカルホスト上Firefox、iOS Safariがimg srcをjqueryで1回以上変更しない

$(document).ready(function(){ 
    function refreshIMG(){ 
     $("#camara").attr("src", "localhost:4000"); 
    } 
}); 
window.setInterval(refreshIMG, 1000) 

を::4000 iは、竜巻サーバをrunnigして保存し、OpenCVのと私のウェブカメラの画像だ

これは私が使用しているコードです。私はこれが働いていることを知っているので、それはGoogle Chromeで動作し、私は私のHDDに画像を保存します。 また、refreshIMG機能を追加して警告(「テスト」)し、毎秒firefoxとiPad2で警告が表示されますが、画像は変更されません。

は、iOS 5.1、クロム18のUbuntuでFirefox 11、iPad上でテストされた11.10

+0

あなたがコードを書いたやり方では、refreshIMGは有効範囲にありませんが、これは単なる編集上の問題であり、実際の問題はキャッシュされている可能性があります。あなたはそれを変更する。 – FilmJ

答えて

6

それは何も変更しないように、これらの他のブラウザでは、srcが同じであることを検出していることは可能ですか?

あなたのsrcに?time=" + new Date().getTime()を追加してみてください。また、setInterval$(document).ready()内に移動することをお勧めします。これは、DOMが準備ができていない(可能性はないが、良い方法)ため、refreshIMG()が存在する前に実行しようとする場合に備えてください。

$(document).ready(function(){ 
    function refreshIMG(){ 
     $("#camara").attr("src", "localhost:4000?time=" + new Date().getTime()); 
    } 
    window.setInterval(refreshIMG, 1000); 
}); 

これは、それは完全に異なる画像の考え方とそれをさわやかにこれらのブラウザを「だます」ことがあります。最終生成物は、ようなものになるだろう。

それ以外の場合は、コンテンツが<img src="localhost:4000">であるページへのAJAX呼び出しを試行し、そのHTMLを現在の画像からHTMLに置き換えることがあります。

+0

URLに日付を追加すると完璧に動作します。どうもありがとうございました – danielfrg

関連する問題