javascript中按setTimeout实现计时示例
来源:自学PHP网
时间:2014-09-19 14:47 作者:
阅读:次
[导读] 倒计时这种功能在很多网站可以看到,特别是团购产品的网站倒计时特别多,下面我来介绍js倒计时实现程序,有需要的朋友可参考参考。...
js代码
代码如下 |
复制代码 |
/**
* 倒计时函数
* 需要在按钮上绑定单击事件
* 如: <INPUT contentEditable=false value=发送短信 type=button data-cke-pa-onclick="setInterval('countDown(this,30)',1000);" data-cke-editable="1">
* 30代表秒数,需要倒计时多少秒可以自行更改
*/
function countDown(obj,second){
// 如果秒数还是大于0,则表示倒计时还没结束
if(second>=0){
// 获取默认按钮上的文字
if(typeof buttonDefaultValue === 'undefined' ){
buttonDefaultValue = obj.defaultValue;
}
// 按钮置为不可点击状态
obj.disabled = true;
// 按钮里的内容呈现倒计时状态
obj.value = buttonDefaultValue+'('+second+')';
// 时间减一
second--;
// 一秒后重复执行
setTimeout(function(){countDown(obj,second);},1000);
// 否则,按钮重置为初始状态
}else{
// 按钮置未可点击状态
obj.disabled = false;
// 按钮里的内容恢复初始状态
obj.value = buttonDefaultValue;
}
}
html
|
代码
代码如下 |
复制代码 |
<h1>
js按钮三十秒倒计时效果</h1>
<hr />
<p>
<input onclick="countDown(this,30);" type="button" value="发送短信" /></p>
<hr />
<h3>
琼台博客 qttc.net</h3>
<p>
在按钮上绑定的js单击事件中‘30’代表倒计时秒数,可以在绑定时设置秒数,灵活应用。 当然,这个倒计时只是前端控制,如果需要更安全的做法应该是服务器端也做判断。</p>
|
|