我的代码如下,当我运行它时,它显示错误-<HTMLAudioElement>
没有方法'set'。为什么会发生这种情况?我已经将我的函数绑定到模型,但它似乎工作错误:
var Player = Backbone.Model.extend({
initialize: function(){
_.bind(this.ontimeupdate, this);
_.bind(this.onprogress, this);
},
setAudio: function(ogglink, mp3link, ontimeupdate){
var el = document.createElement("audio");
el.addEventListener('timeupdate', this.ontimeupdate);
this.audiotag = el;
},
ontimeupdate: function() {
this.set("curtime", this.currentTime);
}
});
2条答案
按热度按时间2o7dmzc51#
与
bindAll
(在进行多个绑定时应该使用它)不同,bind
只返回绑定的函数(相当于ECMA的bind
方法)。或者
或者
niwlg2el2#
如果您将这些方法绑定到
this
(您的Player示例),那么您的ontimeupdate
方法可能看起来更像这样: