Events Backbone.js视图img onload
我正在努力使用backbone.js。我对js很陌生,习惯于as3什么是更面向对象的 我试着用主干制作一个简单的图像库。我加载了100幅图像,如果加载了,我希望它们淡入淡出 我的AppView中有这个。对于我得到的每个图像url,我创建一个PhotoViewEvents Backbone.js视图img onload,events,backbone.js,image,onload,Events,Backbone.js,Image,Onload,我正在努力使用backbone.js。我对js很陌生,习惯于as3什么是更面向对象的 我试着用主干制作一个简单的图像库。我加载了100幅图像,如果加载了,我希望它们淡入淡出 我的AppView中有这个。对于我得到的每个图像url,我创建一个PhotoView var view = new PhotoView({model: photo, list:this.imageList}); this.imageList.append(view.render().el); 在Photoview中,我使用
var view = new PhotoView({model: photo, list:this.imageList});
this.imageList.append(view.render().el);
在Photoview中,我使用以下代码将onload()附加到img标记上(找到):
问题是,在img_load()中,我一次又一次地得到相同的视图(最后一个视图)。任何人都知道如何保持对右视图的引用将
此
作为img_loaded
的参数传递,以便获得对刚刚加载的图像的引用,并根据需要对其进行操作
由于您没有发布
img_loaded
函数的代码,我不确定您是在加载每个函数时一次将它们淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡入淡.您可以像这样将视图引用传递给回调函数
var me = this;
me.$el.find("img").on("load", { me: me }, function (event) { event.data.me.img_loaded(); });
你是对的。在复制代码的过程中,我也遗漏了一点。我错过了“var self=this”之前的“var”
var me = this;
me.$el.find("img").on("load", { me: me }, function (event) { event.data.me.img_loaded(); });