Пытаюсь привязать события разными способами в разных местах и ни одно из них не привязывается:
var GamesView = Backbone.View.extend({
template: _.template(GamesTemplate),
events: { //тут пытаюсь привязать
'click .paginate_button': 'page',
'click .next' : 'nextPage',
'click .previous' : 'previousPage',
},
initialize: function(options){
var that = this;
this.collection = new Games(options);
this.processRequest();
this.listenTo(this.collection, 'sync', function(s){
if (!('cid' in s)) {
that.render();
}
this.bind('click .next', this.nextPage, this); //тут пытаюсь привязать
});
this.bind('click .next', this.nextPage, this); //тут пытаюсь привязать
this.game_filter = options.game_filter ? options.game_filter.toLowerCase() : '';
this.active_page = 1;
this.pages_count = 1;
this.per_page = 10;
App.GlobalEvents.on('games::changeFilter_' + this.collection.game_provider, this.onChangeFilter, this);
},
previousPage: function(e) {
if (this.active_page > 1) {
this.active_page--;
this.render();
}
},
nextPage: function(e) {
if (this.active_page < this.pages_count) {
this.active_page++;
this.render();
}
},
page: function (e) {
var page = $(e.currentTarget).data('dt-idx');
if (!page) {
return;
}
this.active_page = page;
this.render();
},
reset: function(){
this.render();
},
processRequest: function(){
this.collection.fetch({
method: 'POST',
data: {
game_provider: this.collection.game_provider
}
});
},
render: function(){
var that = this;
this.$el.html(this.template({
map: map,
title: map[this.collection.game_provider],
provider: this.collection.game_provider
}));
var filtered_collection = this.collection.toJSON();
if (this.game_filter) {
filtered_collection = filtered_collection.filter(function(game) {
return game.name != null && game.name.toLowerCase().indexOf(that.game_filter) !== -1;
});
}
this.$('.sortable').find('td').each(function () {
var cell = $(this);
cell.width(cell.width());
});
this.pages_count = Math.ceil(filtered_collection.length / this.per_page);
var paginationModule = new PaginationModule();
this.paginationView = new paginationModule.View({
page_show: App.Config.pageShow,
page_count: this.pages_count,
page_active: this.active_page,
totalRecords: filtered_collection.length,
pageSize: this.per_page
});
this.$el.append(this.paginationView.render().el);
filtered_collection = _.chain(filtered_collection)
.rest(this.per_page * (this.active_page - 1))
.first(this.per_page)
.value();
var container = this.$('.games-container tbody');
container.html('');
_.each(filtered_collection, function(model, index) {
model = new Game(model);
container.append(new GameView({model: model}).render().el);
});
this.$('.sortable').sortable({
cursor: 'move',
axis: 'y',
containment: 'parent',
beforeStop: function(event, ui) {
that.save();
}
});
this.bind('click .next', this.nextPage, this); //даже тут пытаюсь привязать
return this;
}
});
Ошибок в консоли нет
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Мне нужно при нажатии на "удалить", удалять елемент li вместе с кнопкой delete и edit, но ничего не выходит
выполнял задание по JS, там надо было сделать игру Корона и ЯкорьИ вроде все довольно ясно, и код сравнил с кодом учебника, но не понимаю почему...
Как сделать чтоб на странице выводились рандомные значения в графиках каждые 5 секунд ?
Есть HTML страница на которой плавно по таймеру появляются элементы (jQuery):