2016-04-18 8 views
0

これは私の最初の質問です。私はかなり新しいJSです。とにかく、JSFiddle(http://jsfiddle.net/gPrwW/395/)にこのカウントダウンタイマーがあり、タイマーがゼロになった後、前のページにリダイレクトするために何を編集する必要があるのでしょうか?助けてくれてありがとう!JQuery/Javascript - カウントダウンがゼロになると前のページにリダイレクトしますか?

$(document).ready(function(e) { 
    var $worked = $("#worked"); 

    function update() { 

    var myTime = $worked.html(); 
    var ss = myTime.split(":"); 
    var dt = new Date(); 
    dt.setHours(0); 
    dt.setMinutes(ss[0]); 
    dt.setSeconds(ss[1]); 

    var dt2 = new Date(dt.valueOf() - 1000); 
    var temp = dt2.toTimeString().split(" "); 
    var ts = temp[0].split(":"); 

    $worked.html(ts[1] + ":" + ts[2]); 
    setTimeout(update, 1000); 
    } 

    setTimeout(update, 1000); 
}); 
+0

フィールズを投稿してください。 – RahulB

+0

http://jsfiddle.net/gPrwW/395/ –

答えて

0

これを試してみてください:

<html> 
 

 
<head> 
 
    <script src="https://code.jquery.com/jquery-2.2.3.js" integrity="sha256-laXWtGydpwqJ8JA+X9x2miwmaiKhn8tVmOVEigRNtP4=" crossorigin="anonymous"></script> 
 
    <script> 
 
    $(document).ready(function(e) { 
 
     var $worked = $("#worked"); 
 

 
     function update() { 
 
     var myTime = $worked.html(); 
 
     if (myTime == "00:00") { 
 
      window.history.back(); 
 
      return; 
 
     } 
 
     var ss = myTime.split(":"); 
 
     var dt = new Date(); 
 
     dt.setHours(0); 
 
     dt.setMinutes(ss[0]); 
 
     dt.setSeconds(ss[1]); 
 

 
     var dt2 = new Date(dt.valueOf() - 1000); 
 
     var temp = dt2.toTimeString().split(" "); 
 
     var ts = temp[0].split(":"); 
 

 
     $worked.html(ts[1] + ":" + ts[2]); 
 
     setTimeout(update, 1000); 
 
     } 
 

 
     setTimeout(update, 1000); 
 
    }); 
 
    </script> 
 
</head> 
 

 
<body> 
 
    <div id="worked">00:10</div> 
 
</body> 
 

 
</html>

+0

こんにちは、カウントダウンが0:00になると、どうすれば特定のページに移動できますか? – Manish62

+0

window.location.assign( "http://www.new_url.com")のようなものを使って別のページにリダイレクトすることができます。お役に立てれば。 – zaffer

0

これを使用すると)、前のページに戻ります。

function myReturnFunction() { 
     setTimeout(function(){ 
      history.go(-1); 
     }, 3000); 
    }; 
0

これはいかがですか?

if (ts.join("") === "000000") { 
    alert("Zero!") 
    //location.href = "https://www.google.co.jp" 
} else { 
    $worked.html(ts[1] + ":" + ts[2]); 
    setTimeout(update, 1000); 
} 
0

コードを更新しました。 Check it out https://jsfiddle.net/gPrwW/397/

+0

ありがとう!完璧に動作します! –

0

ので、カップルの事は、あなたが投稿したコードで何が起こっているかについて注意します。まず、Dateオブジェクトを使用しています。 Dateのドキュメントは、(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date)にあります。だから、ts[0]ts[1]の両方がゼロであるかどうかを確認することができますが、どちらも文字列であり、個人的には、そのような文字列をチェックするのは嫌いです。

ただし、Dateには、両方が返されるgetMinutes()getSeconds()という2つのメソッドがあります。したがって、tempを初期化する直前に小切手を貼ることができます。これは次のようになります。

if(dt2.getMinutes() === 0 && dt2.getSeconds() === 0) { 
    // do what you want to do at the end of countdown 
    return; // return out of the function to stop it from continuing 
} 

次に、window.historyを使用してください。まったく別のページに移動する場合は、window.locationを使用できます。両方のドキュメントはここにあります:https://developer.mozilla.org/en-US/docs/Web/API/Window

あなたが行うことができる他のクールなものがあるだけでなく、ドキュメントの回答に慣れることができますので、ドキュメントを見て本当にお勧めします。そこには本当に役に立つ情報がたくさんあります。

関連する問題