javascript – 如何在jquery中保留’this’的上下文

前端之家收集整理的这篇文章主要介绍了javascript – 如何在jquery中保留’this’的上下文前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这样的事情:
var Something = function(){
  this.render = function(){};
  $(window).resize(function(){
    this.render();
  });
}

问题是在匿名函数里面’this’指的是窗口对象.我知道我可以这样做:

var Something = function(){
  this.render = function(){};
  var tempThis = this;
  $(window).resize(function(){
    tempThis.render();
  });
}

但有更好的方法吗?这看起来不太优雅.

解决方法

您找到的解决方案是大多数人使用的解决方案.常见的惯例是将你的tempThis变量称为“那个”.
var Something = function(){
  this.render = function(){};
  var that = this;
  $(window).resize(function(){
    that.render();
  });
};

猜你在找的jQuery相关文章