javascript - 未捕获类型错误 : Cannot read property 'classList' of null

标签 javascript jquery

嗨,我正在尝试制作一个缩小的 header ,我几乎可以正常工作,但是我在 js 文件的这一部分中不断收到上述错误

var cbpAnimatedHeader = (function() {

var docElem = document.documentElement,
    header = document.querySelector( '.cbp-af-header' ),
    didScroll = false,
    changeHeaderOn = 300;

function init() {
    window.addEventListener( 'scroll', function( event ) {
        if( !didScroll ) {
            didScroll = true;
            setTimeout( scrollPage, 250 );
        }
    }, false );
}

function scrollPage() {
        var sy = scrollY();
        if ( sy >= changeHeaderOn ) {
            var windowtab = $(window).width();
            if (windowtab >= 1021)
            {
            classie.add( header, 'cbp-af-header-shrink' );
            }
        }
        else {
            classie.remove( header, 'cbp-af-header-shrink' );
        }
        didScroll = false;
}

function scrollY() {
    return window.pageYOffset || docElem.scrollTop;
}

init();
})();

var classie = {
// full names
 hasClass: hasClass,
addClass: addClass,
removeClass: removeClass,
toggleClass: toggleClass,
 // short names
has: hasClass,
 add: addClass,
remove: removeClass,
toggle: toggleClass
};

当我为 jQuery 添加模块时,我让它在 DNN 中工作,但是当我将它添加到皮肤时,我最终遇到了上述控制台错误

最佳答案

脚本中的这一行:

header = document.querySelector('.cbp-af-header')

@ MDN for document.querySelector()

它表示,返回文档中具有该类的第一个元素


那么您可能正在寻找 .querySelectorAll("selector/s"):

document.querySelectorAll(".cbp-af-header");

@ MDN for document.querySelectorAll()

返回文档中提供的所有元素(div in case)的列表。

关于javascript - 未捕获类型错误 : Cannot read property 'classList' of null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26970562/

相关文章:

javascript - 与输入控件关联的 Bootstrap 按钮不起作用

javascript - jQuery数据属性选择器问题

javascript - 使用 Javascript 访问 JSON 对象中数组中的对象

javascript - 对于带小数的整数用零填充文件名

javascript - 使用javascript仅在数组中合并附近的重复值

php - 是否可以检查请求是否来自 PHP 中的 <script> 标记?

javascript - 如何防止在 React 应用程序中拖放图像?

javascript - innerHTML 修改整个数组

jquery - 传递变量以定位特定数组

php - 当mysql数据库更改时动态更改网站内容