Skip to content

Instantly share code, notes, and snippets.

@jakeauyeung
Last active August 29, 2015 14:04
Show Gist options
  • Save jakeauyeung/e2f6d3daa345e0415b52 to your computer and use it in GitHub Desktop.
Save jakeauyeung/e2f6d3daa345e0415b52 to your computer and use it in GitHub Desktop.
活动每天10点到12点
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript" src="http://cdn.staticfile.org/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
<script type="text/javascript">
(function(window,$) {
var serverInfo = "2014,7,29,11,59,50,2";
var hdStartTime = new Date(2014,7,28,00,00,00), // 开始活动时间 年,月,日,时,分,秒
hdEndTime = new Date(2014,8,1,9,0,0), // 结束活动时间 年,月,日,时,分,秒
currenTimeArray = serverInfo.split(','), // 处理获得的服务器时间
currenTime = new Date(currenTimeArray[0],currenTimeArray[1],currenTimeArray[2],currenTimeArray[3],currenTimeArray[4],currenTimeArray[5]);
var timerHD = setInterval(function() {
var hdForve = currenTime - hdStartTime, // 服务器时间与开始获得时间对比
hdNext = currenTime - hdEndTime; // 服务器时间与结束获得时间对比
var TestcurrenTime = currenTime.setSeconds(currenTime.getSeconds() + 1);
if(hdForve > 0 && hdNext < 0) { // 判断是否在活动时间范围之内
var dayStartTime = new Date(currenTimeArray[0],currenTimeArray[1],currenTimeArray[2],10,0,0), // 每天10点
dayEndTime = new Date(currenTimeArray[0],currenTimeArray[1],currenTimeArray[2],12,0,0), // 每天12点
dayForve = TestcurrenTime - dayStartTime,
dayNext = TestcurrenTime - dayEndTime;
if(dayForve > 0 && dayNext < 0) {
var isHdTime = true;
diffTime(TestcurrenTime,dayEndTime);
} else if(dayForve < 0) {
var isHdNo = true;
diffTime(TestcurrenTime,dayStartTime);
} else if(dayNext > 0) {
var isHdNo = true;
var featrueTime = dayStartTime.setDate(dayStartTime.getDate() + 1) // 第二天10点
diffTime(TestcurrenTime,featrueTime);
} else {
var isHdNo = true;
}
} else {
alert("活动已经结束了");
clearInterval(timerHD);
}
function diffTime(startDate,endDate) {
var diff = endDate - startDate,
days=Math.floor(diff/(24*3600*1000)), // 计算出相差天数
leave1=diff%(24*3600*1000),
hours=Math.floor(leave1/(3600*1000)), // 计算出小时数
leave2=leave1%(3600*1000),
minutes=Math.floor(leave2/(60*1000)), // 计算相差分钟数
leave3=leave2%(60*1000),
seconds=Math.round(leave3/1000); // 计算相差秒数
var hour = $('.hour'),
min = $('.min'),
second = $('.second'),
time = $('#timer'),
tips = $('#tips'),
buy = $('.now-buy');
//创建补0函数
function addZero(s) {
return s < 10 ? '0' + s: s;
}
time.html('<span>' + addZero(hours) +'</span>:<span>' + addZero(minutes) + '</span>:<span>' + addZero(seconds) + '</span>');
if(isHdTime) {
buy.removeClass('disable').text('立即秒杀');
tips.html('秒杀结束');
}
if(isHdNo) {
buy.addClass('disable').text('尚未开始');
tips.html('后开始秒杀');
}
}
}, 1000);
}(window,$));
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment