我们的代码中有一个幻灯片,我想根据图像的数量生成按钮。
我正在遍历每个元素的图像:
renderImageButtons: function() {
images = this.model.attributes.images;
for (i = 0; i <= images.length; i++) {
this.$('.image_buttons').append("<li class='"+(i == 0 ? 'selected':'')+"' rel='"+i+"'></li>")
}
},
并像这样附加事件:
events: {
'click .image_buttons li': 'changeImage'
},
现在,当我单击 li (只是一个小圆圈)时,我想在该数组中渲染一个特定的图像,但我不确定如何使用 Backbone 来解决这个问题。通常我会从按钮上解析 rel 然后相应地加载,但我不确定如何在 Backbone 中访问该信息,或者是否有更好的方法来做到这一点。
目前我有一个自动旋转图像的旋转图像功能:
rotateImage: function() {
images = this.model.attributes.images;
image_index = this.model.attributes.current_image_index;
if (images && image_index != null) {
image_index++;
if (image_index > images.length-1 || !images[image_index]) {
image_index = 0;
}
this.model.set({current_image_index: image_index});
}
},
现在我需要一个 changeImage 函数,但这是我迷路的地方:
changeImage: function() {
alert($(this).toString());
}