0

たとえば、他の場所でホストされているサイトabc.comのDIVに写真があります<IMG SRC="http://xyz.com/image.jpg">

正常に読み込まれますが、これを数秒ごとに更新する必要があります。

アップロードするアイテムの大部分はローカルですが、次のコードはリモート画像では機能しません。

$('#rightpic').load('http://xyz.com/image.jpg', null);

これを試してみると、エラーが発生します:...is not allowed by Access-Control-Allow-Origin.

誰かがこれを行うためのより良い方法をお勧めできますか?

4

2 に答える 2

3

これを試してみてください。.load()関数を使用するのではなく、実際にsrcを変更する必要があります。

$('#rightpic').get(0).src = 'http://xyz.com/image.jpg';
于 2012-06-14T11:30:54.580 に答える
1

.loadAJAXリクエストを使用するため、同じオリジンポリシーが適用されます。これにより、クロスドメインリクエストが制限されます。その上、それはとにかく画像をロードするための最良の方法ではありません。srcまた、キャッシュから画像を読み込むことが多いのと同じURLを設定します。

代わりに、タイムスタンプなどのリクエストごとにランダムなクエリ文字列値を追加して、「キャッシュを無効にする」必要があります

var img = document.getElementById('rightpic');

//update every 10 seconds using time from epoch as random value
setInterval(function(){
    var randomValue = new Date().getTime();
    img.src = "http://example.com/image.jpg?t="+randomvalue;
},10000); 
于 2012-06-14T11:33:48.730 に答える