1

私は実際にsvg.jsライブラリを使用してsvgギャラリープラグインを書いています。解決できない問題に直面しています... 同じギャラリーのインスタンスを作成する必要があります。それらはすべてマウスホイール イベントにバインドされており、このイベント マウスホイール以外はすべて正常に動作します。アクションは、レンダリングされた svg の 1 つでのみ再生されますが、現在のものの値を取ります。マウスホイール イベントは 1 つの SVG 要素にのみバインドされているようです...厄介な部分に分離するために jsfiddle を実行しました。

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

console.log(this);

関数/メソッドの内部でも、適切なインスタンスが返されます。

私の問題に関心をお寄せいただきありがとうございます。

アンドレ。

:)

4

1 に答える 1

1

それらをプッシュすると、images配列プロトタイプはグローバル変数(おそらくdocument.images?)を参照しているようです。2 番目の配列に値が設定されているとき、最初の画像が上書きされていました。

だから私はイメージの宣言を入れて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 に答える