何らかの理由で、jQuery / JSのいくつかのイベントで立ち往生しました
function update()
{
if(scrolling == true) {
return;
}
var count = 0;
jQuery.get('count.txt', function(data) {
count = data;
}).done(function() {
var countstr = '' + count;
myImage.src = "latest" + countstr + ".jpg#" + new Date().getTime();
setTimeout(update, 1000);
});
}
最後の質問で、jQueryの「donefunction」について尋ねました。
現在、タイムアウト/タイマーを使用して、毎秒画像を更新しています。
setTimeout(update, 1000);
それは機能しますが、これが最も賢い解決策にはなり得ないことを私は知っています。C#では、FileWatcherを使用してイベントを使用し、フォルダーに新しいファイルがあるかどうかを確認できます。
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = path;
watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
| NotifyFilters.FileName | NotifyFilters.DirectoryName;
watcher.Filter = "*.jpg";
watcher.Created += new FileSystemEventHandler(OnChanged);
watcher.EnableRaisingEvents = true;
jQuery / JSがそれをチェックするためのAPIまたはイベントはありますか?私もAJAXでの作業を検討していましたが、AJAXの使用経験はありませんでした。
//編集JSがそれを行うことができないことを私は知っています。しかし、このイベントを使用する別の方法(AJAXやNode.jsなど)があるかどうか疑問に思っていました。
私は何をやっている?ftpサーバーにたくさんの画像をアップロードするソフトウェアを作りました。images0、images1、images2など。
イベントは、アップロードされた別の画像があるかどうかを確認し、古い画像の代わりにこれを表示する必要があります
フロリアン、すでに述べたように、クライアントのJSコードではそれを行うことはできません。
この場合、私は何を使用しますか(私はそれが普遍的な解決策だと思います):
ファイルウォッチャーとWebsoketsを使用して、FSの変更についてユーザーに通知できます。FTP、HTTPクライアントを使用してファイルをアップロードすることも、ローカルで作成することもできます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加