在循环中引用这个
Referring to this in a loop?
p._initEvents = function() {
$(window).on('drop', this.onDrop.bind(this)).on('dragover', this.onDragOver);
};
p.onDrop = function(e) {
e.preventDefault();
var files = e.originalEvent.dataTransfer.files;
$.each(files, function(index, file){
this.showTemplate();
});
};
p.showTemplate = function() {
console.log('show template');
};
我试图运行this. showtemplate(),但错误说它是未定义的,我相信这与绑定这个有关。
我已经为onDrop方法绑定了这个,但我不确定在循环中访问这个的最佳方法是什么?
你可以做的一件事是在$.each()
函数之外声明一个this变量…
p.onDrop = function(e) {
e.preventDefault();
var myThis = this;
var files = e.originalEvent.dataTransfer.files;
$.each(files, function(index, file){
myThis.showTemplate();
});
};
相关文章:
- 如何处理javascript中的循环引用,类似于Excel提供迭代限制的方式
- 装饰$errorProvider时的循环引用
- 使用javascript点击事件的循环引用
- 使用 jQuery 将 HTML 文本抓取到 JSON 中,但由于循环引用而无法字符串化
- 为什么jQuery's每个循环的函数都保存对元素对象的引用
- 为什么$().map生成循环引用
- 如何避免在将索引作为函数的参数发送时引用for循环中的最后一个索引
- 这是否在javascript中创建循环引用
- JS - 数字循环引用
- 如何在 JavaScript 和浏览器中处理循环引用
- 可观察量相互依赖以获取自己的值 - 循环引用
- 循环引用似乎在事件处理程序函数中不起作用
- 循环中的 Javascript 引用:“未捕获的类型错误:无法读取未定义的属性'值'”
- 对于循环错误:未捕获的引用错误,未定义变量.怎么了
- 在子对象中创建对父对象的引用是否会导致循环关系
- HTML5 样板和循环渲染路径/引用脚本和样式
- 如何在jQuery事件中引用循环元素
- 关闭选项卡时Javascript引用循环
- JavaScript/GSON:通过对象图动态访问JSON引用(循环引用)
- Javascript引用循环跳转到第一个结束后