Created by Marydon on
1.定義
語法:setInterval(param1,param2)
param1 要調用的函數或要執行的代碼串。
param2 周期性調用param1的時間間隔,單位:毫秒
表示每隔多少毫秒執行一次param1。
停止執行需要使用clearInterval()。
2.情景展示
設置指定時間后,同意按鈕才可以使用,並顯示剩余時間

3.代碼實現
使用計時器setInterval()方法可以實現
html
<body>
<div style="width:500px;">您通過本網站下使用或獲取任何材料、信息、產品或服務之前,請先仔細閱讀本 cookie 聲明。我們有權隨時更改、更新或更正任何本 cookie 聲明或本網站所載任何信息,並將經修訂條款公布於本網站,恕不另行通知。請不時審閱本 cookie 聲明,確保您了解任何變更。如果本 cookie 聲明有任何重大的變更,我們將會在本網站上的主頁清楚說明這些變更。</div>
<input type="button" value="我同意" disabled="disabled"/>
</body>
javascript
<script type="text/javascript">
(function(i){// 閉包
var countDown;
// 對按鈕進行操作
function change(i) {
var text = "我同意";
if (i > 0) {
text += "(" + i + "秒)";
} else {
$(':button').prop('disabled', false);
// 不再調用
clearInterval(countDown);
}
$(':button').val(text);
};
// 頁面加載完畢執行
$(function(){
// 計時器(1秒調用一次)
countDown = setInterval(function () {
change(i);
i--;
}, 1 * 1000);// 1000毫秒
});
})(60);// 60s
</script>
4.效果展示

60秒后

5.小結
使用閉包的原因,是為了避免全局污染,不讓外界訪問到變量i;
閉包語法:(function(){//具體要執行的代碼})()。
