mousewheel多实例冲突

时间:2013-11-11 15:04:12

标签: javascript svg mousewheel

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

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

console.log(this);

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

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

安德烈。

:)

1 个答案:

答案 0 :(得分:1)

当你推送它们时,似乎images数组原型引用了一个全局变量(可能是document.images?)。当第二个数组被弹出时,它会覆盖第一个图像。

所以我将图像声明放在constructor中并且它有效。

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

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

Fiddle

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

best approach to member variables in object-oriented javascript?

Bonne机会! :)