2011-05-29 90 views

回答

1

这似乎很简单。 untilYear有日期和时间信息,sinceYear也有。使用默认的构造函数会导致Date指向当前毫秒(在客户端上),但字符串构造函数允许您在日期之后添加时间。用它来指定你自己的开始/结束时间。顺便说一下,这不适用于服务器时间,它适用于客户端时间。一个重要的区别。

<!DOCTYPE html> 
<html> 

<head> 
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script src="http://keith-wood.name/js/jquery.countdown.js"></script> 
    <link rel="stylesheet" href="http://keith-wood.name/css/jquery.countdown.css" /> 
<meta charset=utf-8 /> 
<title>JS Bin</title> 
<!--[if IE]> 
    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
<![endif]--> 
<style> 
    article, aside, figure, footer, header, hgroup, 
    menu, nav, section { display: block; } 
</style> 
</head> 

<body> 
    <span id="defaultCountdown" class="countdown"></span> 
<script> 
var untilYear = new Date(2011, 07, 26, 11, 20, 00); 
var sinceYear = new Date(2010, 07, 26, 11, 20, 00); 

$('#defaultCountdown').countdown({ since: sinceYear, until: untilYear, compact: true, timezone: -4}); 

</script> 

</body> 
</html> 

编辑:固定。添加sinceYear作为倒计时的参数。以前它只有untilYear。也改变了日期格式。它是这样(这是最可靠的构造函数):

var d = new Date(year, month, day, hours, minutes, seconds, milliseconds); 

其他格式一直在打破。如果您需要不同的时区,请修改时区属性。

timezone: null, // The timezone (hours or minutes from GMT) for the target times, 
     // or null for client local 

如果你需要服务器时区,你需要仔细研究PHP并找出它。然后,您需要在客户端找到与客户端时区的差异,并将该差异作为属性。厌倦夏季时间等。

+0

感谢Chris,但它仍然计算从当前服务器时间开始的时间,而不是您为untilYear输入的时间。我之前尝试过,但它始终从当前服务器时间开始,直到sinceYear时间。你有没有另一种解决方案?无法得到它的工作。 – denis 2011-05-29 15:26:55

+0

嗯...嗯,它仍然从当前的服务器时间计数。感谢你帮助克里斯。我试图找到解决方案,但万一你弄明白了,请分享,所以可以更聪明地解决这个问题;-) – denis 2011-05-30 04:26:43

相关问题