javascript从flot绑定函数访问类对象

时间:2013-01-18 19:58:11

标签: javascript flot

我有一个javascript'class',它有两种方法。在其中一个方法中,我正在尝试创建一个flot plothover绑定,它可以访问我的类的属性和方法,在这里绑定。我想弄清楚的是如何从绑定函数中访问类属性和方法。

var MyClass = 
{
  Property1 = null,
  ShowToolTip: function( x, y, text ) { ...stuff... },
  Render: function ( arg1, arg2 ) 
  {
     this.Property1 = "this works";
     $('#placeholder').bind('plothover', function (event, pos, item ) {
        this.Property1 = "non workie";         // need access to Property1
        this.ShowToolTip( 10, 10, "stuff" );   // need access to ShowToolTip
     }
  }
}

显然,我不能使用'this'来查看MyClass - 所以可以从bind函数中访问和调用MyClass的属性和方法吗?

我可以运行MyClass的多个克隆,因此无论我需要做什么,都必须在每个克隆类中进行隔离。

感谢您的任何建议。 科里。

1 个答案:

答案 0 :(得分:3)

您可以创建对this的引用:

Render: function ( arg1, arg2 ) 
      {
         this.Property1 = "this works";
         var that = this;
         $('#placeholder').bind('plothover', function (event, pos, item ) {
            that.Property1 = "non workie";         // need access to Property1
            that.ShowToolTip( 10, 10, "stuff" );   // need access to ShowToolTip
         }
      }