2016-04-05 7 views
0

私のコードをボタンをクリックしてJavaScriptを使ってページをリロードしようとしています。ボタンは0.5秒ごとに10回クリックする必要があります。 10回クリックされると、コードをリロードする必要があります。ボタンを10回クリックしてページをリロードする

var rolls = 10 

var q = 0 
setInterval(
    function() { 
    document.getElementById("roll").click(); 
    q += 1 
    }, 500); 

if (q == rolls) { 
    location.reload(true) 
} 
+0

あなたはボタン自体で10回ごとに5秒をクリックしてからページをリロードすることにしますか? – HenryDev

+0

私は0.5秒を意味しましたが、それは一般的な考えです – Recuvan

+0

'if'条件は' q'を 'rolls'として定義しています:' 10'、 'q'が' rolls'と一致していないかチェックしません – guest271314

答えて

1

次のソリューションは、ボタンをclicksetIntervalを使用し、rollsを減少させる:ここで私が持っているものです。 rollsが0に達すると、ページがリロードされます。

var rolls = 10 

var q = 0 
setInterval(
    function() { 
    document.getElementById("roll").click(); 
    q += 1 
    if (q == rolls) { 
     location.reload(true); 
    } 
}, 500); 
0

になった以上、ちょうどsetInterval後に実行されたことでしたインターバルを定義した時点でチェックを行っているので、開始時に一度だけ呼び出されているのは、

if (q == rolls) { 
    location.reload(true) 
} 

です。 はこのようにインターバル関数内に置く:

setInterval(
    function() { 
    document.getElementById("roll").click(); 
    if (++q >= rolls) location.reload(true) 
    }, 500); 
0

:あなたの間違いはrollsの値をチェックし、あなたのコードは、以前のそれは実際のsetIntervalメソッドにチェックを挿入するようにしてください0

var rolls = 10; 

setInterval(
    function() { 
    if (!(rolls--)) { 
     window.location.href = window.location.href; 
    } 
    document.getElementById("roll").click(); 
    }, 500); 
関連する問題