Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 拖放到div中_Jquery_Html_Css_Ember.js_Drag And Drop - Fatal编程技术网

Jquery 拖放到div中

Jquery 拖放到div中,jquery,html,css,ember.js,drag-and-drop,Jquery,Html,Css,Ember.js,Drag And Drop,我一直在想,是否有一种方法可以将不同宽度的对象拖放到div中,这样它们就不会相互影响 假设我有两个div和5个object。我所说的div是指类似时间线的东西,每5分钟有一列。而物体就是电影,显然,每部电影都有它的长度。我想把这些电影拖到我的时间表上 对不起,英语不是我的母语。我拍了张照片,也许能帮你理解我的问题 另外,我使用的是ember.js,所以如果它有自己的插件或方法,我想知道 谢谢 有很多插件可以做到这一点,例如,我在Ember.js中实现了一些类似的东西(在其他人的帮助下),用于t

我一直在想,是否有一种方法可以将不同宽度的对象拖放到div中,这样它们就不会相互影响

假设我有两个div和5个object。我所说的div是指类似时间线的东西,每5分钟有一列。而物体就是电影,显然,每部电影都有它的长度。我想把这些电影拖到我的时间表上

对不起,英语不是我的母语。我拍了张照片,也许能帮你理解我的问题

另外,我使用的是ember.js,所以如果它有自己的插件或方法,我想知道


谢谢

有很多插件可以做到这一点,例如,

我在Ember.js中实现了一些类似的东西(在其他人的帮助下),用于to do应用程序来回拖动任务。它基本上可以归结为“容器”类型的组件和“任务”(在您的例子中是胶片)类型的组件

App.TaskContainerComponent = Em.Component.extend({
  classNames: ['col-xs-4', 'taskContainer'],
  isOverdrop: false,
  classNameBindings: ['isOverdrop:isOverdrop'],

  setOverdropIfNotOriginator: function(event, valueToSet){
    var data = JSON.parse(this.get("theData"));
    if(data.stage !== this.get('stage')) {
      this.set('isOverdrop', valueToSet);
    }
  },

  dragEnter: function(event) {
    this.setOverdropIfNotOriginator(event, true);
  },

  dragLeave: function(event){
    this.setOverdropIfNotOriginator(event, false);
  },

  dragOver: function(event){   
    event.preventDefault();
  },

  drop: function(event) {
    var data = JSON.parse(event.dataTransfer.getData('text/data'));
    if(data.stage === this.get('stage')) return;

    // from: data.stage, to: this.get('stage')
    this.sendAction('action', data.id, data.stage, this.get('stage'));
    this.set('isOverdrop', false);
  }
});

App.DragTaskComponent = Em.Component.extend({
  dragStart: function(event) {
    var data = { id: this.get('task.id'), stage: this.get('stage')};
    event.dataTransfer.setData('text/data', JSON.stringify(data));
    this.set("theData", JSON.stringify(data));
  }
});
工作解决方案()有点过时,因为它使用的是Ember.js1.5,但我相信主要概念仍然适用

请参阅SO-

ember上的原始问题,她没有自己的可排序插件,但可以很好地处理视图。