0
ユーザーがページA.htmlのボタンを押したときに、同じWebサーバーでホストされているsocket.ioを使用してB.htmlページ上のイメージを動的に変更するようにしようとしています。 setTimeout()のように意図的な遅延を追加することは可能ですか?socket.ioの2つの異なるページ間の通信?
ユーザーがページA.htmlのボタンを押したときに、同じWebサーバーでホストされているsocket.ioを使用してB.htmlページ上のイメージを動的に変更するようにしようとしています。 setTimeout()のように意図的な遅延を追加することは可能ですか?socket.ioの2つの異なるページ間の通信?
setTimeout()と同様に意図的な遅延を追加することはできますか?
はい、遅延はクライアントまたはサーバーのいずれかに追加できます。例えば、ページ内のクライアント:
// after one second delay, send the message to the server
setTimeout(function() {
socket.emit("changeImage", "pageB");
}, 1000);
または、サーバー上:
ページBのクライアントでsocket.on("changeImage", function(data) {
if (data === "pageB") {
setTimeout(function() {
socket.emit("changeImageB", "pageB");
}, 1000);
}
});
あるいは:
// listen for message to change the image
socket.on("changeImageB", function(data) {
setTimeout(function() {
// change image in the DOM here
}, 1000);
});
あなたは常に直前のsetTimeoutを行うことができますB.html上の画像の変化を遅らせるために、読み出し直後にsetTimeoutまたはsetTimeoutを送出します。 socket.ioの時点では、データの送信に遅延を追加する方法はないと思います。 –