更新 countdown 示例

pull/1299/head
贤心 2023-06-25 09:41:00 +08:00
parent be13118fd1
commit 3e19d36e97
1 changed files with 20 additions and 17 deletions

View File

@ -1,4 +1,4 @@
<pre class="layui-code" lay-options="{preview: 'iframe', codeStyle: 'height: 535px;', layout: ['preview', 'code'], tools: ['full']}"> <pre class="layui-code" lay-options="{preview: true, codeStyle: 'height: 535px;', layout: ['preview', 'code'], allowParse: true, tools: ['full']}">
<textarea> <textarea>
<h3 class="ws-anchor ws-bold">倒计时</h3> <h3 class="ws-anchor ws-bold">倒计时</h3>
@ -51,26 +51,29 @@ layui.use(function(){
var $ = layui.$; var $ = layui.$;
// 倒计时 // 倒计时
var thisTimer; var countdown = util.countdown({
var setCountdown = function(value){ date: '2099-12-31 00:00:00', // 目标时间值
var endTime = new Date(value); // 结束日期 now: new Date(), // 当前时间,一般为服务器时间,此处以本地时间为例
var serverTime = new Date(); // 假设为当前服务器时间,这里采用的是本地时间,实际使用一般是取服务端的 ready: function(){ // 初始操作
clearTimeout(util.countdown.timer); // 清除旧定时器,防止多次渲染时重复执行。实际使用时不常用
clearTimeout(thisTimer); },
util.countdown(endTime, serverTime, function(date, serverTime, timer){ clock: function(obj, inst){ // 计时中
var str = date[0] + ' 天 ' + date[1] + ' 时 ' + date[2] + ' 分 ' + date[3] + ' 秒'; var str = [obj.d,'天',obj.h,'时',obj.m,'分',obj.s,'秒'].join(' ');
lay('#test2').html('距离上述日期还有:'+ str); lay('#test2').html('距离上述日期还有:'+ str);
thisTimer = timer; util.countdown.timer = inst.timer; // 记录当前定时器,以便在重复渲染时清除。实际使用时不常用
}); },
}; done: function(obj, inst){ // 计时完成
layer.msg('Time is up');
setCountdown('2099-12-31 00:00:00'); }
});
// 重置倒计时
laydate.render({ laydate.render({
elem: '#test1', elem: '#test1',
type: 'datetime', type: 'datetime',
done: function(value, date){ done: function(value){
setCountdown(value); countdown.reload({
date: value
});
} }
}); });