0

ドラッグ後に vars にアクセスしたいのですが、ウィジェットを複数回初期化すると、$this と $opts が上書きされ、常に 'y' になります。正しい変数を保存してアクセスするにはどうすればよいですか?

$.widget("custom.test", {

    options: {
        map: ''
    },

    _create: function(){
        $this = this;
        $opts = $this.options;

        if($opts.map){
            $this._createmap();
            $this._loadmap();
        }

        $this._test();
     },

    _test: function(){  
        $map = $this.map;

        $map.drag(function(e, dd) {
            // how to get the correct option here
            // $opts.map is to global?  
        });
    },

    _createmap: function(){
        $this.map = $('<div></div>').addClass('map');
    },
});

$(x).test({map: 'x'});
$(y).test({map: 'y'});

ありがとう!

4

1 に答える 1

0

時々それはとても簡単です

_test: function(){  
    $map = $this.map;

    $map.on('drag',{map: $opts.map}, function(e, dd) {
        // access with event.data
        alert(e.data.map);

    });
},
于 2012-12-02T05:56:21.000 に答える