2015-04-02 2 views
-1

Итак, я стараюсь избегать JQUERY UI или действительно любых библиотек JS wise и пытаюсь создать некоторые функции перетаскивания в backbone.JS. Я уже имел некоторый успех, как вы можете видеть на www.smartkrawl.com с левой стороны, но не можете заставить таблицы перемещаться в разделе холста. Вот фрагмент кода, который прослушивает событие mousedown для выполнения функции перетаскивания, но если вы просматриваете исходный код сайта, доступны файлы JS, особенно ocoa-tables.js. Любая помощь была бы высоко оценена.Как добавить функцию перетаскивания после прослушивания

var Table = Backbone.Model.extend({ 
    initialize:function(options){ 
     this.set("x",options.x); 
     this.set("y",options.y); 
     this.set("el",options.el); 
     $('body').on('mousedown','.table', function() { 
      console.log('mousedown') 
     }); 

    } 

}); 

ответ

0

Возможно, вы должны использовать представление для этого вместо модели. Так делают каждую таблицу в отдельном окне, а затем использовать events хэш, чтобы добавить слушателей вместо того, чтобы делегировать его на body

var TableView = Backbone.View.extend({ 

    events: { 
     "mousedown": "_onMouseDown" 
    }, 

    _onMouseDown: function(e) { 
     console.log('mousedown') 
    } 
}); 

var firstTable = new TableView({ el: ".first.table" }); 
var secondTable = new TableView({ el: ".second.table" }); 
+0

я весь слушатель событий вещи, и я могу переключиться, что на это больше материи, хорошо, у меня есть эта таблица в области холста Теперь, как я переместить его, как я сделал в leftpane? –

0

Я не знаком с Backbone.js, хотя я чувствую, что у меня есть приличное представление о JQuery. Надеюсь, я не задаю очевидный вопрос, хотя, если это та таблица, которую вы хотите, почему бы не настроить таргетинг на таблицу?

$(".table").on("mousedown", function() { 
... 
}); 
+0

Я получаю всю функцию прослушивателя событий, и я могу переключиться на это, это более важно, хорошо, теперь у меня есть эта таблица в области холста, как я могу ее перемещать, как в левом? –

Смежные вопросы