微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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();
  });
};

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐