JavaScript - Error "Cannot set property "innerHTML" "

 
Vista:

Error "Cannot set property "innerHTML" "

Publicado por EDUARDO (1 intervención) el 19/11/2020 01:13:36
Buenas noches, me gustaría hacer una consulta ya que no entiendo mucho de programación.

Estoy configurando un tema de Prestashop, y al inspeccionar la web con Chrome, tengo el siguiente error en bucle: Uncaught TypeError: Cannot set property 'innerHTML' of null
at bottom-350b4240.js:582

Si me voy a la línea de código de ese fichero, dice literalmente esto:

$(document).ready(function(){responsivecolumn()});$(window).resize(function(){responsivecolumn()});$('#aeitestimony-carousel').slick({appendArrows:$('#aeicmstestimony-arrows'),dots:!0,infinite:!1,speed:300,slidesToShow:1,slidesToScroll:1,responsive:[{breakpoint:992,settings:{slidesToShow:1,slidesToScroll:1,infinite:!0}},{breakpoint:768,settings:{slidesToShow:1,slidesToScroll:1}},{breakpoint:480,settings:{slidesToShow:1,slidesToScroll:1}}]});$('#psblog-slider').slick({appendArrows:$('#blog-arrows'),auto:!0,dots:!1,infinite:!1,speed:300,slidesToShow:2,slidesToScroll:1,responsive:[{breakpoint:1200,settings:{slidesToShow:2,slidesToScroll:1,infinite:!0}},{breakpoint:768,settings:{slidesToShow:2,slidesToScroll:1}},{breakpoint:767,settings:{slidesToShow:1,slidesToScroll:1}},{breakpoint:480,settings:{slidesToShow:1,slidesToScroll:1}}]});var countDownDate=new Date("march 5, 2019 15:37:25").getTime();var x=setInterval(function(){var now=new Date().getTime();var distance=countDownDate-now;var days=Math.floor(distance/(1000*60*60*24));var hours=Math.floor((distance%(1000*60*60*24))/(1000*60*60));var minutes=Math.floor((distance%(1000*60*60))/(1000*60));var seconds=Math.floor((distance%(1000*60))/1000);document.getElementById("d").innerHTML=days;document.getElementById("h").innerHTML=hours;document.getElementById("m").innerHTML=minutes;document.getElementById("s").innerHTML=seconds;if(distance<0){clearInterval(x);document.getElementById("count-down").innerHTML="EXPIRED"}},1000);$('.block_newsletter .title').on('click',function(){$(this).toggleClass('active')});function verticalToggle(){if($(document).width()>=992){$('#header .vertical-menu .top-vertical-menu').css('display','none');$('#header .vertical-menu .block-title').click(function(event){$('#header .vertical-menu .top-vertical-menu').toggleClass('active');$('#header .vertical-menu .block-title .cat-title').toggleClass('active');event.stopPropagation();$('#header .vertical-menu .top-vertical-menu').slideToggle("medium")})}

El error me lleva concretamente al InnerHTML: Days, pero la verdad es que no tengo conocimientos de JS y no sé como resolver esto.

Buscando en los archivos del tema he encontrado uno llamado custom.js en el que figura esto, que creo que es lo mismo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/*============ count down =================*/
// Set the date we're counting down to
var countDownDate = new Date("march 5, 2019 15:37:25").getTime();
// Update the count down every 1 second
var x = setInterval(function() {
    // Get todays date and time
    var now = new Date().getTime();
    // Find the distance between now and the count down date
    var distance = countDownDate - now;
    // Time calculations for days, hours, minutes and seconds
    var days = Math.floor(distance / (1000 * 60 * 60 * 24));
    var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
    var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
    var seconds = Math.floor((distance % (1000 * 60)) / 1000);
    // Output the result in an element with id="demo"
    document.getElementById("d").innerHTML = days;
    document.getElementById("h").innerHTML = hours;
    document.getElementById("m").innerHTML = minutes;
    document.getElementById("s").innerHTML = seconds;
    // If the count down is over, write some text
    if (distance < 0) {
        clearInterval(x);
        document.getElementById("count-down").innerHTML = "EXPIRED";
    }
}, 1000);
 $('.block_newsletter .title').on('click', function() {
    $(this).toggleClass('active');
  });


Aún así no se porqué se queda permanentemente dando ese error un boton que ni siquiera existe en el servidor.
¿Alguien podría echarme una mano?

Muchisimas gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro
Val: 1.448
Plata
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Error "Cannot set property "innerHTML" "

Publicado por Alejandro (535 intervenciones) el 26/11/2020 22:18:11
  • Alejandro se encuentra ahora conectado en el
  • chat de PHP
Es porque no existe 'd'.

En el siguiente ejemplo se ejecuta el script antes de que exista el div con id='d'
1
2
3
4
<script>
	document.getElementById('d').innerHTML='¡Hola Mundo!';
</script>
<div id="d"></div>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar