jqueryを使用して1秒ごとにURLをリロードしたいのですが、次のコードを試してみてください。このコードはURLを1回だけリロードします。私はどのように行いますか?
<a href="http://myweb.com/" id="thisLink"></a>
setInterval(window.location = $('#thisLink').attr('href'), 1000);
jqueryを使用して1秒ごとにURLをリロードしたいのですが、次のコードを試してみてください。このコードはURLを1回だけリロードします。私はどのように行いますか?
<a href="http://myweb.com/" id="thisLink"></a>
setInterval(window.location = $('#thisLink').attr('href'), 1000);
setInterval
ブラウザのリロード間で永続的ではありません。また、最初の引数として関数を取ります。次のようなことを試すことができます:
setTimeout(function() {
window.location = $('#thisLink').attr('href');
}, 1000);
リダイレクトする前に1秒待機します。リダイレクトするページが同じコードを持つ場合、同じように動作します。
それがあなたのページである場合、 head でこれを使用できます:
<meta http-equiv="refresh" content="1;url=/">
もちろん、これは埋め込まれているページでのみ機能し、他の外部サイトをリロードし続けることはありませんか?
URLを再ロード(window.location
変更)すると、そのコンテキスト(およびスコープ)が無効にsetInterval
なります(ページは破棄され、次のページがロードされます)。その後、スクリプトが再ロードされ、setInterval
再割り当てされます。
ああ、構文的にはそのコードは無効です。window.location
おそらく、その部分をfunction(){}
でラップしたいと思うでしょう。
setInterval(function(){
window.location = $('#thisLink').attr('href')
}, 1000);
それ以外の場合は、実際には間隔を置いて実行されていませんが、すぐに実行されます。
一度変更window.location
するとページを離れるので、リロードは1回だけです。
新しい名前付きウィンドウでリンクを開くか、子ページをiframeに埋め込む必要があります。
setInterval(function() {
window.open($('#thisLink').attr('href'), 'mywindow', '');
});
あなたを助けるかもしれないこれらを見てください:
JS setInterval は一度だけ実行され ます setInterval と jQuery.html は一度だけ更新されますか? http://www.google.com/search?q=jquery+setinterval+only+running+once&aq=0&oq=jquery+setinterval+only+running+once&sugexp=chrome,mod=1&sourceid=chrome&ie=UTF-8