onload関数内で実行されていないJavascriptコード

ブラインドイーグル

こんにちはみんな私はなぜこのコードが機能しないのか疑問に思っています、私はjavascriptに不慣れでそれで遊んでいます。onload関数内に置くと機能せず、理由がわかりません。onload関数には他にもたくさんのコードがありますが、この例では削除しました。とにかく、他のコードは正常に機能しますが、機能しないこの特定のビットだけです。

window.onload = function() {
var i, timer, divide;
i = 0;
divide = 100;

function start() {
    timer = self.setInterval("increment()", (1000 / divide)); 
}

function increment() {
    i++;
    document.getElementById("timer_out").innerHTML = (i / divide);
}

function stop() {
    clearInterval(timer);
    timer = null;
}

function reset() {
    stop();
    i = 0;
    document.getElementById("timer_out").innerHTML = (i / divide);
}

}
<div>
    <span id="timer_out">0</span>
    </br>
    <input type="button" value="Start" onclick="start()"/>
    <input type="button" value="Stop" onclick="stop()"/>
    <input type="button" value="Reset" onclick="reset()"/>
</div>

millerbr

onloadスコープの外で関数と変数を定義する必要があります。そうしないと、アクセスできません。

var i, timer, divide;
function start() {
    if(!timer) {
        timer = setInterval("increment()", (1000 / divide)); 
    }
}

function increment() {
    i++;
    document.getElementById("timer_out").innerHTML = (i / divide);
}

function stop() {
    clearInterval(timer);
    timer = null;
}

function reset() {
    stop();
    i = 0;
    document.getElementById("timer_out").innerHTML = (i / divide);
}
window.onload = function() {
    i = 0;
    divide = 100;
}

コメントで述べたように、[開始]を複数回クリックするとタイマーを停止できなくなるバグもあります。これは、2つ(またはそれ以上)のタイマーを作成しているが、最後のタイマーへの参照しかないためです。これを修正ifするには、タイマーが存在するかどうかを確認する簡単なステートメントで十分です。上記のコードはこれを示すように更新されており、実行例は次のとおりです:http//jsfiddle.net/qPvT2/40/

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

関数内で実行されないJavaScriptコード

分類Dev

関数内で実行されていないforループ

分類Dev

実行されていない関数のコード

分類Dev

関数内ではPython tkinterコードが実行されない

分類Dev

javascriptで同期して実行されていないコード

分類Dev

Node.jsコードがjavascript関数で実行されていません

分類Dev

JavaScript関数がPHPコードで実行されていません

分類Dev

Javascript onload 関数が実行されていません

分類Dev

onload関数内でJavascript変数が変更されない

分類Dev

コードで呼び出されていない関数は実行時に呼び出されます

分類Dev

関数の終わりに向かって書かれたJavascript検証コードが実行されない

分類Dev

関数内のifステートメントの後にコードが実行されていないようです

分類Dev

Javascriptコード部分が正しい順序で実行されていない

分類Dev

C#関数がajax Javascriptコードから実行されないのはなぜですか?

分類Dev

onloadやonLocationfoundなどのイベントハンドラー関数が機能していません関数が実行されていません

分類Dev

Angularjsコードが無名関数で実行されていません

分類Dev

PUG / Jadeファイルで実行されていないJavascriptコード

分類Dev

このcppコードはmain関数なしでどのように実行されていますか?

分類Dev

JavaScriptがヘッダー関数で実行されない

分類Dev

TFrame.Createで実行されていないコード

分類Dev

Javaで実行されていないAsyncTaskのコード

分類Dev

コールバック内のコードが実行されていない

分類Dev

コールバック内のコードが実行されていない

分類Dev

javascript関数が実行されていないのはなぜですか?

分類Dev

このコードでコールバック関数が実行されないのはなぜですか?

分類Dev

.onload関数の後にコードを実行するにはどうすればよいですか?

分類Dev

setTimeout内で実行されている関数のスコープが失われました

分類Dev

この関数の後、file_put_contents()コード行が実行されないのはなぜですか?

分類Dev

<erl> </ erl>内のYawsコードが実行されていない

Related 関連記事

  1. 1

    関数内で実行されないJavaScriptコード

  2. 2

    関数内で実行されていないforループ

  3. 3

    実行されていない関数のコード

  4. 4

    関数内ではPython tkinterコードが実行されない

  5. 5

    javascriptで同期して実行されていないコード

  6. 6

    Node.jsコードがjavascript関数で実行されていません

  7. 7

    JavaScript関数がPHPコードで実行されていません

  8. 8

    Javascript onload 関数が実行されていません

  9. 9

    onload関数内でJavascript変数が変更されない

  10. 10

    コードで呼び出されていない関数は実行時に呼び出されます

  11. 11

    関数の終わりに向かって書かれたJavascript検証コードが実行されない

  12. 12

    関数内のifステートメントの後にコードが実行されていないようです

  13. 13

    Javascriptコード部分が正しい順序で実行されていない

  14. 14

    C#関数がajax Javascriptコードから実行されないのはなぜですか?

  15. 15

    onloadやonLocationfoundなどのイベントハンドラー関数が機能していません関数が実行されていません

  16. 16

    Angularjsコードが無名関数で実行されていません

  17. 17

    PUG / Jadeファイルで実行されていないJavascriptコード

  18. 18

    このcppコードはmain関数なしでどのように実行されていますか?

  19. 19

    JavaScriptがヘッダー関数で実行されない

  20. 20

    TFrame.Createで実行されていないコード

  21. 21

    Javaで実行されていないAsyncTaskのコード

  22. 22

    コールバック内のコードが実行されていない

  23. 23

    コールバック内のコードが実行されていない

  24. 24

    javascript関数が実行されていないのはなぜですか?

  25. 25

    このコードでコールバック関数が実行されないのはなぜですか?

  26. 26

    .onload関数の後にコードを実行するにはどうすればよいですか?

  27. 27

    setTimeout内で実行されている関数のスコープが失われました

  28. 28

    この関数の後、file_put_contents()コード行が実行されないのはなぜですか?

  29. 29

    <erl> </ erl>内のYawsコードが実行されていない

ホットタグ

アーカイブ