1

我实际上正在使用 svg.js 库编写一个 svg 画廊插件。我遇到了一个我无法解决的问题......我需要创建同一个画廊的一些实例,它们都绑定到鼠标滚轮事件,除了这个事件鼠标滚轮之外一切正常。该动作仅在渲染的 svg 之一中播放,但它采用当前的值。似乎鼠标滚轮事件只绑定到一个 SVG 元素......我做了一个 jsfiddle 试图隔离到令人讨厌的部分。

http://jsfiddle.net/dredtrake/SDSk6/1/

console.log(this);

在函数/方法内部也返回了好的实例。

感谢您对我的问题感兴趣。

安德烈。

:)

4

1 回答 1

1

当您推送它们时,数组原型似乎images引用了一个全局变量(也许document.images?)。当第二个数组被填充时,它正在覆盖第一个图像。

所以我把图像的声明放在了constructor它的工作原理上。

var SvgTests = function (params){
    var defaults = {
                _item : 'canvas',
                _duration : 650
            };

    this.images = [];
    this.options = JQUERY.extend({}, defaults, params);
};

小提琴

注意:您应该在您的变量中声明变量,constructor而不是为每个变量创建一个原型。

面向对象的javascript中成员变量的最佳方法?

好机会!:)

于 2013-11-11T16:42:42.363 回答