javascript - Jquery each 方法

标签 javascript jquery methods this each

<分区>

我有一个类(class)播放列表:

function Playlist() {
    this.episodes = [ /*episode list*/ ];
};

我想制作一个显示每一集的方法:

Playlist.prototype.display = function() {
    $('.episodeList').each(function(index) {
        $(this).children('title').text(this.episodes[index].title);
    });
}

问题是末尾的“this”,在“.episodes[index]”之前代表所选的 dom 对象,而不是我的播放列表。

我该如何解决这个问题?谢谢。

最佳答案

将函数绑定(bind)到您的上下文:

$('.episodeList').each($.proxy(function(index, elem) {
    $(elem).children('title').text(this.episodes[index].title);
}, this));

更多关于 jQuery.proxy

关于javascript - Jquery each 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11575939/

相关文章:

c++ - 自定义类函数引起的内存错误

javascript localstorage 两个div

javascript - 当div滚动到某个点以上时改变文本的颜色

javascript - 多列 HTML 列表框

javascript - 在其他页面调用函数

java - 查找并计算大写字母

java - Groovy - Java 类的反射 - 方法和参数

javascript - 用 onclick 重叠两个元素

javascript - 来自 jquery 的 mvc 日期时间选择器设置值未绑定(bind)到模型

javascript - HTML 密码验证