2019-4-25 定時器學習

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<!--
定時器函數:js中提供兩種定時器函數;
/*
* 延遲ms後,執行fn函數,只會執行一次。而且這個函數不會阻塞後面的代碼,後面代碼不用等待。
* fn:延遲後須要執行函數;
* ms:毫秒;1秒等於1000毫秒;
*
* setTimeout返回值:返回惟必定時器的timeoutId。
*/
一、新建一個定時器var timeId = setTimeout(fn,ms);
二、清除一個定時器 clearTimeout(timeId); //若是你臨時想取消一個定時器。



/*
* 延遲ms後,執行fn函數,週期性執行。其實就是,setInterval會每隔ms後,執行一次咱們的代碼;
* fn:延遲後須要執行函數;
* ms:毫秒;1秒等於1000毫秒;
*
* setInterval返回值:返回惟必定時器的timeoutId。
*/
一、新建一個定時器var timeId = setInterval(fn,ms);
二、清除一個定時器 clearInterval(timeId); //若是你臨時想取消一個定時器。
-->


<!--定時器小練習-->
<div>倒計時<span id="ms">5</span>秒,跳轉至百度</div>
<div>當前時間:<span id="nowTime"></span></div>
<!--使用定時器方式,定時器:1.延遲定時器(執行一次)2.週期定時器(執行屢次)-->

</body>

<script type="text/javascript">
//2000毫秒後執行fn中的代碼,而且接受timeid;
var timeId = setTimeout(function(){
console.log("settimeout...");
},2000);
//清除定時器
clearTimeout(timeId);

//每隔1000毫秒後執行fn中代碼,而且接收timeid;
var timeId = setInterval(function(){
console.log("setinterval...");
},1000);
//清除定時器
clearInterval(timeId);
</script>

<script type="text/javascript">
// 定時器練習
//1.用戶打開網頁3s後,彈出一個廣告
setTimeout(function(){
console.log("我是一個廣告哦");
},3000);

//2.倒計時5s後跳轉至百度
//獲取倒計時的內容
var ms = document.getElementById("ms");
//開啓一個定時器
var timeId = setInterval(function(){
//獲取當前秒數,而後-1
var value = parseInt(ms.innerHTML)-1;
ms.innerHTML = value;

//若是當前是0秒則清除定時器
if (value == 0) {
clearInterval(timeId);
//跳轉至百度
// location.href = "http://www.baidu.com"
}
},1000);


//3.顯示當前時間,而且每秒更新一次
//獲取當前時間的字符串
function getNowDate(){
//建立時期對象
var date = new Date();

//獲取小時
var h = date.getHours();

//獲取分
var m = date.getMinutes();

//獲取秒
var s = date.getSeconds();

//將獲取的時分秒組合,並返回值
return h+":"+m+":"+s;
}
//獲取顯示時間標籤
function updateNowTime(){
nowTime.innerHTML = getNowDate();
console.log("1133");
}
//獲取時間的顯示位置,並將函數設置好的時間顯示出來
var nowTime = document.getElementById("nowTime");
updateNowTime();

//獲取的當前時間是固定的 咱們須要開啓一個定時器,修改時間
setInterval(updateNowTime,1000);
</script>
</html>javascript

相關文章
相關標籤/搜索