动态添加的div不可拖动

时间:2015-12-15 12:29:34

标签: javascript jquery html html5 jquery-ui

我正在尝试使我动态添加的div可拖动但是如果我在

之后调用
$("#draggable").draggable({});

for( var i = 0; i < 5; i++ ){
  var smallone = document.createElement('div');
  smallone.id = "draggable";
  smallone.className = "smallDiv";
  smallone.style.bacgroundColor = 'blue';

  document.body.appendChild(smallone);
}

没有机会让divs拖延 我知道如果我首先创建div,但我需要保持这样,因为我的项目,这个例子显示我的问题。

这是小提琴:http://jsfiddle.net/bimbochobot/9jstfwpm/4/

谢谢你的建议。

3 个答案:

答案 0 :(得分:1)

添加新元素后,您必须draggable for( var i = 0; i < 5; i++ ) { var smallone = document.createElement('div'); smallone.id = "draggable"; smallone.className = "smallDiv"; smallone.style.backgroundColor = 'blue'; document.body.appendChild(smallone); $(smallone).draggable({}); } 小部件。

试试这个fiddle

testCookie

答案 1 :(得分:0)

使用class而不是id,因为id必须是唯一的

Mozilla/5.0 (Linux; Android 4.4.2; Micromax P470 Build/KOT49H)  AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36;

将可拖动的类分配给所有div

答案 2 :(得分:0)

简单1 ...

for( var i = 0; i < 5; i++ )
{
  var smallone = document.createElement('div');
  smallone.id = "draggable";
  smallone.className = "smallDiv";
  smallone.style.bacgroundColor = 'blue';

  document.body.appendChild(smallone);
  $(".smallDiv").draggable({});
}

它正在运作...... http://jsfiddle.net/9jstfwpm/7/