当页面在请求其它AJAX时,会导致setInterval倒计时不准,深入了解过setInterval和setTimeout进来回复下 大哥,我知道啊,除AJAX会导致setInterval停顿,点一个耗时长的按钮也会导致setInterval停顿 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 倒计时不建议用JS实现。如果用JS,那用setInterval,在执行时 当前时间和结束时间相减或者当前时间与开始时间比较的方式 哥们,如果不用JS,那只能用FLASH了,但我不会FLASH啊,不知道你有没有其它方法??? 大哥,我知道啊,除AJAX会导致setInterval停顿,点一个耗时长的按钮也会导致setInterval停顿 我一直写满屏很多对象的动画 这个需要不断的setInterval执行很多脚本 但是从来没碰到过 setInterval明显的停顿你有什么方法会耗时这么久 分享出来看看 大哥,我知道啊,除AJAX会导致setInterval停顿,点一个耗时长的按钮也会导致setInterval停顿 我一直写满屏很多对象的动画 这个需要不断的setInterval执行很多脚本 但是从来没碰到过 setInterval明显的停顿你有什么方法会耗时这么久 分享出来看看 <!--倒计时js代码 --> <script type="text/javascript" language="javascript"> var now = new Date('<%=dd %>'); function GetServerTime(){var urodz = new Date(document.getElementById("TextBox1").value);now.setTime(now.getTime()+250);days = (urodz - now) / 1000 / 60 / 60 / 24;daysRound = Math.floor(days);hours = (urodz - now) / 1000 / 60 / 60 - (24 * daysRound);hoursRound = Math.floor(hours);minutes = (urodz - now) / 1000 /60 - (24 * 60 * daysRound) - (60 * hoursRound);minutesRound = Math.floor(minutes);seconds = (urodz - now) / 1000 - (24 * 60 * 60 * daysRound) - (60 * 60 * hoursRound) - (60 * minutesRound);secondsRound = Math.round(seconds);document.getElementById("date").innerHTML = daysRound;document.getElementById("time").innerHTML = hoursRound + ":" + minutesRound + ":" + secondsRound;//这里判断倒计时的时间是否到来,以及要触发的一系列动作(可以调用后台的方法,不过好像必须是有返回值的方法)if(daysRound==0){//后台的方法 var i="<%=tan() %>";}}setInterval("GetServerTime()",250);</script> </head><body> <form id="form1" runat="server"> <div> <p><span id="date"></span><span class="white14b">天</span><span id="time"></span></p> </div> 现在时间是<input type="text" id="nows" onfocus="aa()" />点我获取服务端时间 <asp:TextBox ID="TextBox1" runat="server">2015-01-10</asp:TextBox> <iframe src="min.aspx" name="myiframe" id="myiframe" class="myiframe"></iframe> </form><body> <div class="main"> <iframe src="min.aspx" name="myiframe" id="myiframe" class="myiframe"></iframe> </div> </body>min.aspx如下 <script type="text/javascript"> function Getajax() { $.ajax({ url: "stop.aspx", dataType: "html", type: "GET", contentType: "application/x-www-form-urlencoded; charset=utf-8", cache: false, async: false, //由于特殊要求,这个设置没法修改 success: function (data) { //s = data.toString(); $("#gethtml").html(data); } }); } setInterval("Getajax()", 1000); </script>由于用的是 async: false ,所以要等myiframe内的AJAX请求完成之后,才会 url: "stop.aspx",你的页面就叫‘停止’很符合逻辑 setInterval 本来就不精确,用不用ajax都不精确。5楼是正解 用时间差来判断 VS2010 oracle连接 邮件发送失败 一个取值的问题 请教一个关于自动生成页面的问题 谁集成过支付宝?我想问问怎么给支付宝反馈Y 高分求一个思路,对多个XML文档中的相同节点中的属性值进行级联更新? 大家看看这个问题怎么解决,UP有分 送分:求asp.net应用程序框架 session请高手带路呀,我还是很不清楚,谁和我说一下,详细点加分呀! 显示图表问题 腾讯企业邮箱api,一键登录的接口调不通 求一个密码的正则表达式
如果用JS,那用setInterval,在执行时 当前时间和结束时间相减或者当前时间与开始时间比较的方式
哥们,如果不用JS,那只能用FLASH了,但我不会FLASH啊,不知道你有没有其它方法???
大哥,我知道啊,除AJAX会导致setInterval停顿,点一个耗时长的按钮也会导致setInterval停顿 我一直写满屏很多对象的动画 这个需要不断的setInterval执行很多脚本 但是从来没碰到过 setInterval明显的停顿你有什么方法会耗时这么久 分享出来看看
大哥,我知道啊,除AJAX会导致setInterval停顿,点一个耗时长的按钮也会导致setInterval停顿 我一直写满屏很多对象的动画 这个需要不断的setInterval执行很多脚本 但是从来没碰到过 setInterval明显的停顿你有什么方法会耗时这么久 分享出来看看 <!--倒计时js代码 -->
<script type="text/javascript" language="javascript">
var now = new Date('<%=dd %>');
function GetServerTime()
{
var urodz = new Date(document.getElementById("TextBox1").value);
now.setTime(now.getTime()+250);
days = (urodz - now) / 1000 / 60 / 60 / 24;
daysRound = Math.floor(days);
hours = (urodz - now) / 1000 / 60 / 60 - (24 * daysRound);
hoursRound = Math.floor(hours);
minutes = (urodz - now) / 1000 /60 - (24 * 60 * daysRound) - (60 * hoursRound);
minutesRound = Math.floor(minutes);
seconds = (urodz - now) / 1000 - (24 * 60 * 60 * daysRound) - (60 * 60 * hoursRound) - (60 * minutesRound);
secondsRound = Math.round(seconds);
document.getElementById("date").innerHTML = daysRound;
document.getElementById("time").innerHTML = hoursRound + ":" + minutesRound + ":" + secondsRound;
//这里判断倒计时的时间是否到来,以及要触发的一系列动作(可以调用后台的方法,不过好像必须是有返回值的方法)
if(daysRound==0)
{
//后台的方法
var i="<%=tan() %>";
}
}
setInterval("GetServerTime()",250);
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<p><span id="date"></span><span class="white14b">天</span><span id="time"></span></p>
</div>
现在时间是<input type="text" id="nows" onfocus="aa()" />点我获取服务端时间
<asp:TextBox ID="TextBox1" runat="server">2015-01-10</asp:TextBox>
<iframe src="min.aspx" name="myiframe" id="myiframe" class="myiframe"></iframe>
</form><body>
<div class="main">
<iframe src="min.aspx" name="myiframe" id="myiframe" class="myiframe"></iframe>
</div>
</body>
min.aspx如下 <script type="text/javascript">
function Getajax() {
$.ajax({
url: "stop.aspx",
dataType: "html",
type: "GET",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
cache: false,
async: false, //由于特殊要求,这个设置没法修改
success: function (data) {
//s = data.toString();
$("#gethtml").html(data); }
}); }
setInterval("Getajax()", 1000);
</script>
由于用的是 async: false ,所以要等myiframe内的AJAX请求完成之后,才会