代码之家  ›  专栏  ›  技术社区  ›  Basant B. Pandey

如何使用“jquery.countdown.js”插件使倒计时与jquery同步?

  •  1
  • Basant B. Pandey  · 技术社区  · 14 年前

    无法获取正确的ans,因为我从jquery变量“short”获得了正确的结果,但当我与函数“serversync”同步时,所有设置都将设置为0:0:0,我已检查两个日期是否相同。 参考现场 http://keith-wood.name/countdown.html

    这是我的密码

    [WebMethod]
    public static String GetTime()
    {
        DateTime dt = new DateTime(); 
        dt = Convert.ToDateTime("April 9, 2010 22:38:10");  
        return dt.ToString("dddd, dd MMMM yyyy HH:mm:ss");
    }
    

    HTML文件

    <script type="text/javascript" src="Scripts/jquery-1.3.2.js"></script>
    
    <script type="text/javascript" src="Scripts/jquery.countdown.js"></script>
    
    <script type="text/javascript">
        $(function() {
            var shortly = new Date('April 9, 2010 22:38:10');
            var newTime = new Date('April 9, 2010 22:38:10');
            //for loop divid
            /// 
            $('#defaultCountdown').countdown({
                until: shortly, onExpiry: liftOff, onTick: watchCountdown, serverSync: serverTime
            });
            $('#div1').countdown({ until: newTime });
        });
    
        function serverTime() {
            var time = null;
            $.ajax({
                type: "POST",
                //Page Name (in which the method should be called) and method name
                url: "Default.aspx/GetTime",
                // If you want to pass parameter or data to server side function you can try line
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                data: "{}",
                async: false,
                //else If you don't want to pass any value to server side function leave the data to blank line below
                //data: "{}",  
                success: function(msg) {
                    //Got the response from server and render to the client
    
                    time = new Date(msg.d);
                    alert(time);
                },
                error: function(msg) {
                    time = new Date();
                    alert('1');
                }
            });
    
            return time;
    
        }
        function watchCountdown() { }
        function liftOff() { }
    
    </script>
    


    1 回复  |  直到 12 年前
        1
  •  0
  •   dochoffiday    14 年前

    您将服务器时间设置为倒数的时间。

    由于新的“serversync”时间和“until”时间相同,因此倒计时将仅为0。