我创建html主题,在干净的html / css / js上完美工作,但是
在drupal7的主题化过程中,面临以下问题:


  未捕获的TypeError:无法读取未定义的属性“ top”


windowscroll: function(){

        var headerOffset = $header.offset().top;
        var headerWrapOffset = $headerWrap.offset().top;

        var headerDefinedOffset = $header.attr('data-sticky-offset');
        if( typeof headerDefinedOffset !== 'undefined' ) {
            if( headerDefinedOffset == 'full' ) {
                headerWrapOffset = $window.height();
                var headerOffsetNegative = $header.attr('data-sticky-offset-negative');
                if( typeof headerOffsetNegative !== 'undefined' ) { headerWrapOffset = headerWrapOffset - headerOffsetNegative - 1; }
            } else {
                headerWrapOffset = Number(headerDefinedOffset);
            }
        }


我检查了Jquery的所有作品,请告诉我将主题.js移植到Drupal时有什么精妙之处。

最佳答案

我相信$ header之前没有定义。试试这个代码:

windowscroll: function(){
    console.log($header);


您应该在此功能块中定义此变量或将其作为参数传递。

10-04 18:32