javascript - 将对象引用传递给 jQuery 回调
问题描述
(版主注意:我已经阅读并理解了这个优秀的线程:“this”关键字是如何工作的?它与这个问题无关)
我没有发现混合 jQuery 和 OOP以将上下文传递给 jQuery 回调的类似案例。
我在上面定义了一个名为MySlider的类和一个名为registerListener的方法,但是我无法从 jQuery 回调中获取对MySlider对象的引用。
任何想法?
MySlider.prototype.registerListeners = function () {
var hello = this;
$('#sl').slider({
slide: function (event, ui) {
console.log(event + " " + ui);
// how to access 'hello' from here ?
}
}) ;
};
提前致谢。
解决方案
只需访问它!您已经创建了一个闭包,其中定义在外部函数中的变量可以从内部函数访问。
变量的一种副本与函数对象一起存储。如果您var hello = "tricked you!"
在定义函数之后执行此操作,则hello
内部函数中 found 的值将更新以匹配。
推荐阅读
- javascript - 为什么我的猫鼬 findOne 查询返回多个结果
- swift - Swift 5 中从日期时间字符串到当前时间的天数时差
- flutter - Flutter 在滚动 ListView 上显示和隐藏容器
- java - 使用 Java 8 Stream forEach 方法迭代 char 数组
- python - Regex for prohibiting surrogates in python
- amazon-qldb - Amazon QLDB have any scaling/performance limits?
- spring-boot - What is the difference between eureka.instance.instance-id and eureka.instance.metadataMap.instanceId?
- javascript - 存根问题返回承诺的函数 - mocha
- html - 用 flex 将 mat-icon 放在 div 的中心?
- r - How do I perform calculations after splitting a datset into multiple datasets?