Вопрос по – Перетащите с помощью Ember.js

10

Есть ли пример того, как реализовать Drag and Drop с Ember.js? Я пытался использовать jQuery UI, но интеграция кажется довольно сложной.

Я видел это jsFiddle:http: //jsfiddle.net/oskbor/Wu2cu/1 но я не смог реализовать это успешно в моем собственном приложении.

Каковы варианты довольно простой реализации перетаскивания с использованием Ember.js?

Ваш Ответ

1   ответ
17

посл Реми Шарпом и реализовал базовый пример в Ember.js, см.http: //jsfiddle.net/pangratz666/DYnNH.

Рули:

<script type="text/x-handlebars" >
    Drag and drop the green and red box onto the blue one ...

    {{view App.Box class="box green"}}
    {{view App.Box class="box red"}}

    {{view App.DropTarget class="box blue"}}
</script>​

JavaScript:

DragNDrop = Ember.Namespace.create();

DragNDrop.cancel = function(event) {
    event.preventDefault();
    return false;
};

DragNDrop.Dragable = Ember.Mixin.create({
    attributeBindings: 'draggable',
    draggable: 'true',
    dragStart: function(event) {
        var dataTransfer = event.originalEvent.dataTransfer;
        dataTransfer.setData('Text', this.get('elementId'));
    }
});

DragNDrop.Droppable = Ember.Mixin.create({
    dragEnter: DragNDrop.cancel,
    dragOver: DragNDrop.cancel,
    drop: function(event) {
        var viewId = event.originalEvent.dataTransfer.getData('Text');
        Ember.View.views[viewId].destroy();        
        event.preventDefault();
        return false;
    }
});

App.Box = Ember.View.extend(DragNDrop.Dragable);
App.DropTarget = Ember.View.extend(DragNDrop.Droppable);​
не могли бы вы обновить скрипку с помощью jquery 1.7? Кажется, он сломан с помощью jQuery edge. sly7_7
Это выглядит многообещающе и похоже на то, что есть в моем собственном приложении. Но на самом деле он не будет поддерживать браузеры, которые не поддерживают перетаскиваемые и сбрасываемые атрибуты HTML5, что я и хочу найти здесь. Очевидно, меня больше всего беспокоит поддержка IE:) Joachim H. Skeie
Хмм, похоже, это поддерживается в IE, см. Caniuse.com / # подвиг = dragndrop ... pangratz
@ sly7_7 Ого, спасибо за улов! Я обновил код для использования 1.7.2. pangratz
Нет проблем, просто вопрос удачи, найти этот ответ для ответа на другой:) sly7_7

Похожие вопросы