2013-08-20 26 views
-1

這是我的js/PHP的顯示功能:如何在此js時間腳本上添加日期?

<script type="text/javascript"> 
     $.fn.cycle.defaults.speed = 900; 
     $.fn.cycle.defaults.timeout = 5000; 

     $(function() 
     { 
      $('#demos pre code').each(function() 
      { 
       eval($(this).text()); 
      }); 

      $('#demos2 pre code').each(function() 
      { 
       eval($(this).text()); 
      }); 
     }); 

     $(function($) { 
      var pstOptions = { 
      timeNotation: '12h', 
      am_pm: true, 
      utc: true, 
      utc_offset: <%SETTING_TIMEOFFSET%>, 
      fontFamily: 'Verdana, Times New Roman', 
      fontSize: '11px', 
      foreground: 'white', 

      background: 'black' 
      } 
      $('.jclockPST').jclock(pstOptions); 
     }); 
    </script> 

,這是我的全部JS腳本:

/* 
* jQuery jclock - Clock plugin - v 0.2.1 
* http://plugins.jquery.com/project/jclock 
* 
* Copyright (c) 2007-2008 Doug Sparling <http://www.dougsparling.com> 
* Licensed under the MIT License: 
* http://www.opensource.org/licenses/mit-license.php 
*/ 
(function($) { 

    $.fn.jclock = function(options) { 
    var version = '0.2.1'; 

    // options 
    var opts = $.extend({}, $.fn.jclock.defaults, options); 

    return this.each(function() { 
     $this = $(this); 
     $this.timerID = null; 
     $this.running = false; 

     $.fn.jclock.getServerOffset($this); 

     var o = $.meta ? $.extend({}, opts, $this.data()) : opts; 

     $this.timeNotation = o.timeNotation; 
     $this.am_pm = o.am_pm; 
     $this.utc = o.utc; 
     $this.utc_offset = o.utc_offset; 

     $this.css({ 
     fontFamily: o.fontFamily, 
     fontSize: o.fontSize, 
     backgroundColor: o.background, 
     color: o.foreground 
     }); 

     $.fn.jclock.startClock($this); 

    }); 
    }; 

    $.fn.jclock.getServerOffset = function(el) { 
    //Want to make a synchronous call to the server to get the server time. 
    $.ajax({ 
     url: "Time.php", 
     async: false, 
     context: el, 
     success: function(result) { 
      var serverDate = new Date(+(result) * 1000); //Convert the seconds to a number, and multiple by 1000 to get milliseconds. 
      var clientDate = new Date(); 

      $this = $(this.context[0]); 

      $this.serverOffset = clientDate - serverDate; //Set the offset between server and client. 
     } 
    }); 
    }; 

    $.fn.jclock.startClock = function(el) { 
    $.fn.jclock.stopClock(el); 
    $.fn.jclock.displayTime(el); 
    }; 

    $.fn.jclock.stopClock = function(el) { 
    if(el.running) { 
     clearTimeout(el.timerID); 
    } 
    el.running = false; 
    }; 

    $.fn.jclock.displayTime = function(el) { 
    var time = $.fn.jclock.getTime(el); 
    el.html(time); 
    el.timerID = setTimeout(function(){$.fn.jclock.displayTime(el)},1000); 
    }; 

    $.fn.jclock.getTime = function(el) { 
    var now = new Date(new Date().getTime() - el.serverOffset); //Apply the server offset. 
    var hours, minutes, seconds; 

    if(el.utc == true) { 
     if(el.utc_offset != 0) { 
     now.setUTCHours(now.getUTCHours()+el.utc_offset); 
     } 
     hours = now.getUTCHours(); 
     minutes = now.getUTCMinutes(); 
     seconds = now.getUTCSeconds(); 
    } else { 
     hours = now.getHours(); 
     minutes = now.getMinutes(); 
     seconds = now.getSeconds(); 
    } 

    var am_pm_text = ''; 
    (hours >= 12) ? am_pm_text = " P.M." : am_pm_text = " A.M."; 

    if (el.timeNotation == '12h') { 
     hours = ((hours > 12) ? hours - 12 : hours); 
    } else { 
     hours = ((hours < 10) ? "0" : "") + hours; 
    } 

    minutes = ((minutes < 10) ? "0" : "") + minutes; 
    seconds = ((seconds < 10) ? "0" : "") + seconds; 

    var timeNow = hours + ":" + minutes + ":" + seconds; 
    if ((el.timeNotation == '12h') && (el.am_pm == true)) { 
    timeNow += am_pm_text; 
    } 

    return timeNow; 
    }; 

    // plugin defaults 
    $.fn.jclock.defaults = { 
    timeNotation: '24h', 
    am_pm: false, 
    utc: false, 
    fontFamily: '', 
    fontSize: '', 
    foreground: '', 
    background: '', 
    utc_offset: 0 
    }; 

})(jQuery); 

如何在其上添加日期,所以它會顯示週一,週二和等? 我的當前時間是通過time.php獲取的,通過echo time();

非常感謝,很感謝。

回答

0

您可以使用Date對象的getDay()方法來實現此目的。 getDay()方法返回0(星期日)至6(星期六)。

您需要首先建立一個數組:

var wdays = [ 'Sunday', 'Monday', ... , 'Saturday'] ; 

然後由得到的工作日名稱:

var weekday = wdays[now.getDay()]; 

timeNow += weekday; //append week day to the final result 
+0

你能幫我實施它在我目前的時間代碼?我不想破壞一些東西,我會非常感激。 –

0
function day() { 
    var days = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat']; 
    var now = new Date(); 
    return days[now.getDay()]; 
} 

現在你可以調用當天函數來獲取日期字符串var today = day() // 'Tue' or current day

+0

你能幫我在我現在的時間碼中實現嗎?我不想破壞一些東西,我會非常感激。 –