serban c Ответов: 1

Почему setinterval() в javascript не работает


Я создаю часы в html css и javascript, но часы не обновляются.
Вот мой код:

index.html

<pre><!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>

    <link rel="stylesheet" type="text/css" href="stil.css">

    <meta charset="utf-8">
    <title>Digital Clock</title>
  </head>
  <body onload="fun()">
    <div class="main">
      <div class="badge">
        CLOCKLY
      </div>
      <div class="clock">
        <span id="hour"></span>
        <span id="minute"></span>
        <span id="second"></span>
      </div>
    </div>

    <script src="script.js"></script>
  </body>
</html>


стиль.в CSS

@import url('https://fonts.googleapis.com/css?family=Orbitron');

* {
  padding: 0;
  margin:0;
  box-sizing: border-box;
}

body {
  background: url("./pattern.jpg")
}


.main {
  background: #ccc;
  width: 400px;
  margin: 100px auto;
  height: 175px;
  position: relative;
  padding: 30px;

}

.badge {
  width: 96px;
  background: #e66357;
  color: white;
  padding: 5px 10px;
  font-family: sans-serif;
  font-weight: bold;
  position: absolute;
  top: -15px;
  left: 40%;
}

.clock {
  background:#ebebeb;
  text-align: center;
  height: 100%;
  padding-top: 25px;
  font-size: 40px;
  font-family: Orbitron;
  border-radius: 4px;
}


script.js

var d = new Date();
var h = d.getHours();
var m = d.getMinutes();
var s = d.getSeconds();


var interval = window.setInterval(update, 1000);


function update() {

document.getElementById("hour").innerHTML = h+" : ";
document.getElementById("minute").innerHTML = m+" : ";
document.getElementById("second").innerHTML = s;

}


Что я уже пробовал:

Я пробовал писать setInterval разными методами, но ни один из них не работал

ZurdoDev

Просто отладьте его и узнайте, что происходит. Это должно быть очень просто.

Быстрый google выглядит так, как будто js, возможно, обновился. Вы можете попробовать
document.getElementById("myspan").textContent="newtext";

1 Ответов

Рейтинг:
1

serban c

Решил ее.... я модифицировал js

function update() {

  var d = new Date();
  var h = d.getHours();
  var m = d.getMinutes();
  var s = d.getSeconds();


document.getElementById("hour").innerHTML = h+" : ";
document.getElementById("minute").innerHTML = m+" : ";
document.getElementById("second").innerHTML = s;

}

setInterval(update, 1000);