Проблема с первым гаджетом Windows 7 при запуске JavaScript

Для моего первого гаджета Windows я пытаюсь создать тот, который отображает текущее время и дату. Код ниже - это то, что у меня есть, но я не могу понять, почему не работает javascript. Есть идеи?

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=Unicode" />
    <title>Clock</title>
    <style type="text/css">
      body { width: 130px; height: 60px; margin: 1 1 1 2; }
      body { font-family: Segoe UI, Arial; font-size: 11px; font-weight: bold; white-space: nowrap; }
    </style>
    <script type="text/javascript">
      var background;
      var interval;
      var connection_id;
      var timeZone;
      var now;

      function load() {
        try {
          interval = 1000;
          connection_id = 0;
          timeZone = System.Time.currentTimeZone;

          update();
        }
        catch(e){}
      }

      function update() {
        try {
          now = new Date(Date.parse(System.Time.getLocalTime(timeZone)));
          curDate.innerHTML = now.format('M jS, Y');
          curTime.innerHTML = now.format('h:i:s A');
          clearTimeout(connection_id);
          connection_id = setTimeout("update()", interval);
        }
        catch(e) {}
    </script>
  </head>
  <body onload="load()">
    <div id="curDate">
    </div>
    <div id="curTime">
    </div>
  </body>
</html>

2 ответа

Решение

Я не уверен, что вы пытаетесь сделать со ссылками на "System.Time". Попробуйте использовать функции JavaScript "Дата". Вот хорошая ссылка http://www.w3schools.com/jsref/jsref_obj_date.asp

Также я не уверен, что это просто опечатка в том, что вы опубликовали, но похоже, что вы пропустили закрывающий '}'

 function update() {
    try {
      now = new Date(Date.parse(System.Time.getLocalTime(timeZone)));
      curDate.innerHTML = now.format('M jS, Y');
      curTime.innerHTML = now.format('h:i:s A');
      clearTimeout(connection_id);
      connection_id = setTimeout("update()", interval);
    }
    catch(e) {}
 } // <--- Here

format Метод для вашей даты не является родным методом Date. Вы определили это где-нибудь? Вы можете попытаться отобразить выданную ошибку, используя curTime.innerHTML = e.message в вашем предложении поймать. Проверьте эту ссылку при создании гаджетов на боковой панели.

Другие вопросы по тегам