0

Can someone explain what I am missing here... the querySelector doesn't appear to be working as I am getting the error "cannot read the property of null" on line 10 my javascript.

const deg = 6;
const hr = document.querySelector("#hr");
const mn = document.querySelector("#mn");
const sc = document.querySelector("#sc");
setInterval(() => {
        let day = new Date();
        let hh = day.getHours() * 30;
        let mm = day.getMinutes() * deg;
        let ss = day.getSeconds() * deg;
        hr.style.transform = 'rotateZ(${hh+(mm/12)} deg)';
        mn.style.transform = 'rotateZ(${mm}deg)';
        sc.style.transform = 'rotateZ(${ss}deg)';
})

Here is the HTML...

    <div class="clock">
    <div class="hour">
        <div class="hr" id="hr"></div>
    </div>
    <div class="min">
        <div class="mn" id="mn"></div>
    </div>
    <div class="sec">
        <div class="sc" id="sc"></div>
    </div>
</div>
KevMoe
  • 433
  • 2
  • 17

1 Answers1

0

epascarello already gave you the solution but he told you it working here.

const deg = 6;
const hr = document.querySelector("#hr");
const mn = document.querySelector("#mn");
const sc = document.querySelector("#sc");
setInterval(() => {
        let day = new Date();
        let hh = day.getHours() * 30;
        let mm = day.getMinutes() * deg;
        let ss = day.getSeconds() * deg;
        hr.style.transform = `rotateZ(${hh+(mm/12)} deg)`;
        mn.style.transform = `rotateZ(${mm}deg)`;
        sc.style.transform = `rotateZ(${ss}deg)`;
})
.clock > div >div {
  width: 40px;
  height: 5px;
  background: red;
}
<div class="clock">
    <div class="hour">
        <div class="hr" id="hr"></div>
    </div>
    <div class="min">
        <div class="mn" id="mn"></div>
    </div>
    <div class="sec">
        <div class="sc" id="sc"></div>
    </div>
</div>
Antonio Torres
  • 324
  • 1
  • 8