jq实现竞拍倒计时
1jq的效果代码
//全局变量用于存储当前时间
var nows; function rightZeroStr(v) {
if (v < ) {
return "" + v;
}
return v + "";
}
//计时 每10秒中为当前时间+10
setInterval(function () {
nows =parseInt(nows) + ;
}, );
//ajax.post 向服务器请求得到当前的服务器时间
function syncTime() {
var url = "Handler/Seckil.ashx?t=" + new Date().getTime();
$.post(url, { action: "now" }, function (response) {
nows = response.nows || new Date().getTime();
});
}
//倒计时 参数arg存放倒计时的标签名称 id 或者class
function lxfEndtime(arg) {
$(arg).each(function () {
var lxfday = $(this).attr("lxfday"); //用来判断是否显示天数的变量
var endtime = new Date($(this).attr("endtime")).getTime(); //取结束日期(毫秒值)
var nowtime = nows; //今天的日期(毫秒值)
var starttime = new Date($(this).attr("starttime")).getTime();
//开始时间和当时时间作比较 判断是开始 技术还是正在进行中
if (starttime >= nowtime) {
$(this).html("活动即将开始")
}
if (endtime <= nowtime) {
$(this).html("活动已经结束"); //如果结束日期小于当前日期就提示过期啦
}
if (starttime < nowtime && endtime > nowtime) {
var youtime = endtime - nowtime; //还有多久(毫秒值)
var seconds = youtime / ;
var minutes = Math.floor(seconds / );
var hours = Math.floor(minutes / );
var days = Math.floor(hours / );
var CDay = days;
var CHour = CDay * + hours % ;
var CMinute = minutes % ;
var CSecond = Math.floor(seconds % ); //"%"是取余运算,可以理解为60进一后取余数,然后只要余数。 if ($(this).attr("lxfday") == "no") {
$(this).html('<span class="countdown" millseconds="1188163453"> <strong class="tcd-h">' + CHour + '</strong>时<strong class="tcd-m">' + CMinute + '</strong>分 <strong class="tcd-s">' + CSecond + '</strong>秒 </span>'); //输出没有天数的数据
} else {
$(this).html('<span class="countdown" millseconds="1188163453"><strong class="tcd-d">' + days + '</strong><b>天</b> <strong class="tcd-h">' + CHour + '</strong> <i>:</i> <strong class="tcd-m">' + CMinute + '</strong><i>:</i> <strong class="tcd-s">' + CSecond + '</strong> </span>'); //输出有天数的数据
}
}
});
setTimeout("lxfEndtime('" + arg + "')", );
};
2用到的handler
<%@ WebHandler Language="C#" Class="Seckil" %> using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Text;
using System.Data;
public class Seckil : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/json";
string action = context.Request["action"];
switch (action)
{case "now":
now(context);
return; }
context.Response.Write("Hello World");
}public void now(HttpContext context)
{
Int64 retval = ;
DateTime st = new DateTime(, , );
TimeSpan t = (DateTime.Now.ToUniversalTime() - st);
retval = (Int64)(t.TotalMilliseconds + 0.5);
context.Response.Write("{\"nows\":\"" + retval + "\"}");
} public bool IsReusable
{
get
{
return false;
}
} }
3前台页面代码
<html>
<script src="js/time.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
syncTime();
lxfEndtime(".box font");
});
</script>
<body>
<font color=\"#FF0000\" endtime=\"' + dataitem.EndDate + '\" starttime=\"' + dataitem.StartDate + '\" lxfday=\"no\"></font>
</body>
</html>
jq实现竞拍倒计时的更多相关文章
- js&jq 发送验证码倒计时
<input type="text" name='' id="btn"> //发送验证码倒计时var wait=30; function t ...
- destoon开发笔记-JQ+JS实现倒计时功能
页面代码 <div class="time " class="" id="onBidtime125" pid="125&qu ...
- JS与JQ倒计时的写法
页面需要制作一个倒计时的功能:然后度娘了一遍,找到两种写法,原生JS与JQ 的,经过测试原生JS在IE可能会有不刷新的现象所以结合了一个大神的JQ写法修改好了一个. 原生JS写法: HTML: < ...
- jq 倒计时
引入jq 注 在IE和safari 如果时间出现NAN 将时间格式改为YYYY/MM/DD HH:MM:SS 例:var d2 = new Date("2019/02/18 15:59&qu ...
- jq倒计时(代码)
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- jq 实现发送验证码倒计时功能
var util = { wait:60, hsTime: function (that) { _this = this; if (_this.wait == 0) { $('#hsbtn').rem ...
- jQ效果:jQuery之插件开发短信发送倒计时功能
实现的主要功能如下: 1.点击按钮的时候,可以进行倒计时,倒计时自定义. 2.当接收短信失败后,倒计时停止,可点击重新发送短信. 3.点击的元素支持一般标签和input标签. html代码: < ...
- js,JQ获取短信验证码倒计时
按钮 <a href="javasript:void(0);"onclick="settime(this);">获取手机验证码</a> ...
- jq 某个时间段的倒计时
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
随机推荐
- mapreduce优化总结
集群的优化 1.合理分配map和reduce任务的数量(单个节点上map任务.reduce任务的最大数量) 2.其他配置 io.file.buffer.size hadoop访问文件的IO操作都需要通 ...
- Canvas入门(1):绘制矩形、圆、直线、曲线等基本图形
来源:http://www.ido321.com/968.html 一.Canvas的基础知识 Canvas是HTML 5中新增的元素,专门用于绘制图形.canvas元素就相当于一块“画布”,一块无色 ...
- 在这个年纪,打DOTA冲分有那么可笑么?
大学四年,毕业两年,6年dota,总是在最无助的时候让心灵得到一丝安宁的东西,烟和dota. 我不知道dota对别人的意义是什么,一盘dota,在最多不超过1个半小时的时间里,仿佛经历了一个小人生,每 ...
- C#相关图书推荐
C#入门经典(第6版) 作 者 [美] Karli Watson,Jacob Vibe Hammer,Jon D Reid 等 著: 出 版 社 清华大学出版社 出版时间 2014-01-0 ...
- 【暑假】[实用数据结构]范围最小值问题(RMQ)
范围最小值问题: 提供操作: Query(L,R):计算min{AL ~ AR } Sparse-Table算法: 定义d[i][j]为从i开始长度为2j的一段元素的最小值.所以可以用递推的方法表示. ...
- Install_pygments
安装Pygments语法高亮 On OS X Leopard, Snow Leopard 1 $ sudo easy_install Pygments Alternatively on OS X wi ...
- struts2实现文件上传
Struts2中实现简单的文件上传功能: 第一步:将如下文件引入到WEB_INF/lib目录下面,对应的jar文件可自行下载 第二步:在包test.struts2下建立类UploadFile pack ...
- linux下开发c第一弹--相关环境需求
我用的是mac,mac和linux一般集成了一定的开发环境,基本上需要gcc.vim.gdb之类的,linux下需要apt-get,mac下homebrew的brew install都可以解决问题.同 ...
- GridControl表头全选操作实现之最优方法
突然发现很久没有写博客了. 昨天整了个Windows Live Writer 就为了以后好好写写博客. 所以,开始咯. 为了积累,也为了分享. 之前在博客园中看到一篇文章:<Winform分页控 ...
- Spring Autowiring by AutoDetect
In Spring, "Autowiring by AutoDetect", means chooses "autowire by constructor" i ...