Uncaught TypeError: Невозможно установить свойство 'src' со значением NULL, но установлен ID - PullRequest
0 голосов
/ 06 июля 2018

У меня есть этот скрипт, который добавляет идентификатор в тег img, а затем функцию, которая изменяет src изображения с другой цветной версией, как показано ниже:

<script type="text/javascript">
jQuery(document).ready(function( $ ) {
$('.custom-logo-link img').each(function(i) {
$(this).attr('id', 'img-logo' + i);
});
});

function setImg(){
var numRand = Math.floor((Math.random() * 4) + 1);
document.getElementById("img-logo0").src = "/wp-content/uploads/2018/04/Logo"+numRand+".jpg";}

setImg();

window.setInterval("setImg()",1000);
</script>

Моя проблема в том, что я продолжаю получать Uncaught TypeError: Невозможно установить свойство 'src' со значением NULL, но я установил идентификатор, на который он должен смотреть.

1 Ответ

0 голосов
/ 06 июля 2018

Вы можете переместить setImg() внутри документа, готово, тогда у вас не будет проблемы с ID, который еще не установлен, и getElementById не будет работать:

jQuery(document).ready(function( $ ) {
    $('.custom-logo-link img').each(function(i) {
        $(this).attr('id', 'img-logo' + i);
    });

// Move this to the end: });

    function setImg(){
        var numRand = Math.floor((Math.random() * 4) + 1);
        document.getElementById("img-logo0").src = "/wp-content/uploads/2018/04/Logo"+numRand+".jpg";
    }
    setImg();
    window.setInterval(setImg, 1000);
});
...