コードにスライドショーがあり、画像の数に基づいてボタンを生成したいと考えています。
各要素の画像を繰り返し処理しています。
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 を解析し、それに応じてロードしますが、バックボーンでその情報にアクセスする方法や、これを行うためのより良い方法があるかどうかはわかりません。
現在、画像を自動回転する画像回転機能があります。
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());
}