
ecshop 促销商品怎么做一个倒计时效果,js还是ecshop就有这个功能,怎么调用? 100
展开全部
给促销商品添加倒计时效果,
第一步 在模板文件中有个php文件夹,打开init.php文件,搜索get_advlist要sql后追加,意思就是在$sql = "select ap.ad_width,ap.ad_height,ad.ad_id,ad.ad_name,ad.ad_code,后面添加搜索字段ad.start_time,ad.end_time,如果存在该字段,就不需要再添加了。
第二步 然后在$arr[$row['ad_id']]['name'] = $row['ad_name'];后添加
$time = gmtime();
if ($time >= $row['start_time'] && $time <= $row['end_time'])
{
$arr[$row['ad_id']]['etime'] = local_date('M d, Y H:i:s',$row['end_time']);
}
else
{
$arr[$row['ad_id']]['etime'] = 0;
}
第三步
<script >
var Tday = new Array();
var daysms = 24 * 60 * 60 * 1000
var hoursms = 60 * 60 * 1000
var Secondms = 60 * 1000
var microsecond = 1000
var DifferHour = -1
var DifferMinute = -1
var DifferSecond = -1
function clock(key,num)
{
var time = new Date()
var hour = time.getHours()
var minute = time.getMinutes()
var second = time.getSeconds()
var timevalue = ""+((hour > 12) ? hour-12:hour)
timevalue +=((minute < 10) ? ":0":":")+minute
timevalue +=((second < 10) ? ":0":":")+second
timevalue +=((hour >12 ) ? " PM":" AM")
var convertHour = DifferHour
var convertMinute = DifferMinute
var convertSecond = DifferSecond
var Diffms = Tday[key].getTime() - time.getTime()
DifferHour = Math.floor(Diffms / daysms)
Diffms -= DifferHour * daysms
DifferMinute = Math.floor(Diffms / hoursms)
Diffms -= DifferMinute * hoursms
DifferSecond = Math.floor(Diffms / Secondms)
Diffms -= DifferSecond * Secondms
var dSecs = Math.floor(Diffms / microsecond)
if(convertHour != DifferHour) a="<font color=#666>"+DifferHour+"</font>天";
if(convertMinute != DifferMinute) b="<font color=#666>"+DifferMinute+"</font>时";
if(convertSecond != DifferSecond) c="<font color=#666>"+DifferSecond+"</font>分"
d="<font color=#666>"+dSecs+"</font>秒"
if (DifferHour>0) {a=a}
else {a=''}
document.getElementById("leftTime"+num+key).innerHTML = a + b + c + d; //显示倒计时信息
}
</script>
<!--{foreach from=$goods_list item=goods name=name key=key}-->
<!-- {if $smarty.foreach.name.iteration < 2} -->
<div class="tab-pannel">
<h6 style="visibility: visible;" class="countDownWrapper J_countDownWrapper">离结束仅剩:<span class="J_countDown countDown" id="leftTime1{$key}"></span></h6>
<h5 class="slideTitle">{$goods.goods_name}</h5>
<h6 class="slideSubTitle" style="height:36px; overflow:hidden;"><span class="greenTip">{$goods.goods_brief}</span></h6>
<a href="pro_goods.php?id={$goods.goods_id}" style="width:290px; height:220px; overflow:hidden;"><img src="{$goods.goods_img}" width="220" height="220" style="margin-left:35px;" ></a>
</div>
<script>
Tday[{$key}] = new Date("{$ad.etime}");
window.setInterval(function()
{clock({$key},1);}, 1000);
</script>
<!--{/if}-->
<!--{/foreach}-->
代码参考,样式自行定义
第一步 在模板文件中有个php文件夹,打开init.php文件,搜索get_advlist要sql后追加,意思就是在$sql = "select ap.ad_width,ap.ad_height,ad.ad_id,ad.ad_name,ad.ad_code,后面添加搜索字段ad.start_time,ad.end_time,如果存在该字段,就不需要再添加了。
第二步 然后在$arr[$row['ad_id']]['name'] = $row['ad_name'];后添加
$time = gmtime();
if ($time >= $row['start_time'] && $time <= $row['end_time'])
{
$arr[$row['ad_id']]['etime'] = local_date('M d, Y H:i:s',$row['end_time']);
}
else
{
$arr[$row['ad_id']]['etime'] = 0;
}
第三步
<script >
var Tday = new Array();
var daysms = 24 * 60 * 60 * 1000
var hoursms = 60 * 60 * 1000
var Secondms = 60 * 1000
var microsecond = 1000
var DifferHour = -1
var DifferMinute = -1
var DifferSecond = -1
function clock(key,num)
{
var time = new Date()
var hour = time.getHours()
var minute = time.getMinutes()
var second = time.getSeconds()
var timevalue = ""+((hour > 12) ? hour-12:hour)
timevalue +=((minute < 10) ? ":0":":")+minute
timevalue +=((second < 10) ? ":0":":")+second
timevalue +=((hour >12 ) ? " PM":" AM")
var convertHour = DifferHour
var convertMinute = DifferMinute
var convertSecond = DifferSecond
var Diffms = Tday[key].getTime() - time.getTime()
DifferHour = Math.floor(Diffms / daysms)
Diffms -= DifferHour * daysms
DifferMinute = Math.floor(Diffms / hoursms)
Diffms -= DifferMinute * hoursms
DifferSecond = Math.floor(Diffms / Secondms)
Diffms -= DifferSecond * Secondms
var dSecs = Math.floor(Diffms / microsecond)
if(convertHour != DifferHour) a="<font color=#666>"+DifferHour+"</font>天";
if(convertMinute != DifferMinute) b="<font color=#666>"+DifferMinute+"</font>时";
if(convertSecond != DifferSecond) c="<font color=#666>"+DifferSecond+"</font>分"
d="<font color=#666>"+dSecs+"</font>秒"
if (DifferHour>0) {a=a}
else {a=''}
document.getElementById("leftTime"+num+key).innerHTML = a + b + c + d; //显示倒计时信息
}
</script>
<!--{foreach from=$goods_list item=goods name=name key=key}-->
<!-- {if $smarty.foreach.name.iteration < 2} -->
<div class="tab-pannel">
<h6 style="visibility: visible;" class="countDownWrapper J_countDownWrapper">离结束仅剩:<span class="J_countDown countDown" id="leftTime1{$key}"></span></h6>
<h5 class="slideTitle">{$goods.goods_name}</h5>
<h6 class="slideSubTitle" style="height:36px; overflow:hidden;"><span class="greenTip">{$goods.goods_brief}</span></h6>
<a href="pro_goods.php?id={$goods.goods_id}" style="width:290px; height:220px; overflow:hidden;"><img src="{$goods.goods_img}" width="220" height="220" style="margin-left:35px;" ></a>
</div>
<script>
Tday[{$key}] = new Date("{$ad.etime}");
window.setInterval(function()
{clock({$key},1);}, 1000);
</script>
<!--{/if}-->
<!--{/foreach}-->
代码参考,样式自行定义
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询