imageScroll js视差未捕获类型错误

imageScroll js parallax Uncaught type error

我在我的网站上实施了 imageScroll.js 并收到以下错误消息:

Uncaught TypeError: Cannot read property 'left' of undefined'

错误指的是文件 imageScroll.js 中的第 233 行,它说

winWidth = $win.width() - this.settings.container.offset().left,

当我检查 "this" 元素的当前内容时,我得到

console.log($(this));    
VM2442:2 [Window, jquery: "2.1.3", constructor: function, selector: "", toArray: function, get: function…]


console.log(this);
Window {top: Window, window: Window, location: Location, external: Object, chrome: Object…}

不幸的是,这并没有告诉我太多信息。

这里是website发生错误的地方。

感谢任何解决此问题的提示或想法!

干杯!

埃里克

jQuery 的图像滚动插件无法正常工作

var touch = Modernizr.touch;
t = 0;

image = document.getElementsByClassName("img-holder")[t].attributes[1].childNodes[0].data;t++

$('.img-holder').imageScroll({
        imageAttribute: (touch === true) ? "" + image : 'image',
        touch: touch
});

这几乎可以工作,但是

this.image = this.$imageHolder.data(this.settings.imageAttribute) || this.settings.image;

jQuery

的 imageScroll 插件中的第 187 行

但是this.$imageHolder.data(this.settings.imageAttribute) returns undefined and this.settings.image is used which is null

这是问题的核心我还没有弄清楚如何使jQueryreturn我们需要的img元素上的图像数据标签的字符串

https://github.com/pederan/Parallax-ImageScroll 是问题的作者向我建议的,但它需要一些返工,我不想帮助

编辑:

var touch = Modernizr.touch; 
    t = 0; 
    image = document.getElementsByClassName("img-holder");

    $('.img-holder').imageScroll({
        imageAttribute: (touch === true) ? image : 'data-image',
        touch: touch
    });

完美无误,但图像最终以 [Object object] 作为来源