javascript - 鼠标滚轮多实例冲突

标签 javascript svg mousewheel

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

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

console.log(this);

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

感谢您对我的问题的关注。

安德烈。

:)

最佳答案

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

所以我将图像声明放入构造函数中并且它起作用了。

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

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

Fiddle

注意:您应该在构造函数中声明变量,而不是为每个变量创建一个原型(prototype)。

best approach to member variables in object-oriented javascript?

好机会! :)

关于javascript - 鼠标滚轮多实例冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19909432/

相关文章:

javascript - d3js 堆叠条形图中的分页

javascript - MouseWheel 事件在 IE 中不起作用?

javascript - 当鼠标悬停在 Firefox 中的嵌入式 iframe 上时防止父页面滚动

javascript - 使用 HTML/JS/CSS 缩短链接

javascript - 错误: invalid variable initialization

javascript - 使用 Visual Studio Code 将 EmberObject 扩展导入到不同的文件后,为什么看不到任何代码完成?

c# - "always"捕获鼠标滚轮事件并滚动父级?

javascript - 字符串与javascript中的排序规则比较

javascript - 避免使用拉斐尔缩放调整笔划大小

android - 使用默认图像而不是默认图像资源 ID 的 Volley NetworkImageView