Uncaught TypeError: Cannot read property 'element' of undefined, cannot call methods on masonry prior to initialization; attempted to call 'reload'

Uncaught TypeError: Cannot read property 'element' of undefined, cannot call methods on masonry prior to initialization; attempted to call 'reload'

请帮我找出问题所在,我遇到了两个错误

1.Uncaught TypeError: Cannot read property 'element' of undefined

2.cannot call methods on masonry prior to initialization; attempted to call 'reload'.

Javascript

$("#articleview").append(articles);
initialiseMasonry();
function initialiseMasonry() {
    $('#articleview').masonry({
        itemSelector: '.masonry_thumbnail',
        //columnWidth: 580,
        isAnimated: true,
    }).imagesLoaded(function () {
        hideLoadingImg(true);
        $(this).masonry('reload');
    });
}

我在 articleview 中附加文章并通过 id 进入 html。

这两个错误都指出选择器“#articleview”正在返回 null,因此 null 的元素是未定义的,同时在 null 上调用了 masonry 函数,这引发了第二个错误。可能的原因 - 1、不存在id为"articleview"的html元素。 2. 脚本在 dom 加载之前加载,因此脚本找不到元素。