私は2つの別々のページを持っています:ユーザーが新しい画像をアップロードする場所、ユーザーが新しい画像をアップロードしたときにのみ、新しい画像でdivを更新
スクリプトはtxtファイル内のファイル名を見ていると、最初のファイル名をフェッチしている(file_name2.jpg | file_name1.jpg)
ここではスクリプトです:
$(function(){
var GALLERY = {
container: "#gallery",
url: "getImages.txt",
delay: 10000,
load: function(){
var _gallery = this;
var number = 1 + Math.floor(Math.random() * 9999999999);
$.ajax({
type: "get",
url: this.url + '?rand=' + number,
beforeSend: function(){
$(_gallery.container).find('img').remove();
},
success: function(data){
var images = data.split('|', 1);
$.each(images, function(){
_gallery.display(this);
});
},
complete: function(){
setTimeout(function(){
_gallery.load();
}, _gallery.delay);
}
});
},
display: function(image_url){
$('<img />').attr('src', 'images/' + image_url).load(function(){
$(this);
}).prependTo(this.container);
}
}
GALLERY.load();
});
問題がされ:新しい画像がアップロードされていなくても、スクリプトは常に画像を実行して置き換えます。
イメージは、新しいイメージがアップロードされたときにのみリフレッシュする必要があります。
どうすればこの問題を解決できますか?
ありがとうございます!これはうまくいきません...私のjQuery mojoはそれほど強くはありません:)私はそれを動作させるために以下を編集しました:beforeSendを削除し、gallery.displayを調整してください(this)_gallery.display(this) – andyderuyter
申し訳ありません、君は :) –