代碼如下<!doctype html><html lang="en"><head>
<meta charset="utf-8" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>
<style>
.draggable { width: 200px; height: 200px; border: 1px dotted #000 } </style>
<script>
$(function() {
$( ".draggable" ).draggable();
$("#add_elem").click(function(){
$elem = '<div class="draggable">方框B</div>';
$('body').append($elem);
});
}); </script></head><body><button id="add_elem">添加元素</button><div class="draggable">
<p>方框A</p></div></body></html>效果圖如下:如圖中:方塊A可以拖拽,這個可以理解,但是當點擊添加元素按鈕生成方塊B后,方塊B不可以拖拽,這是為什么?
2 回答

月關寶盒
TA貢獻1772條經驗 獲得超5個贊
= =必然不能。。 .draggable()是主動調用 才會在elem上添加額外的class才能達到拖拽效果。
$(function() { $( ".draggable" ).draggable(); $("#add_elem").click(function(){ elem = $('<div/>').addClass('draggable').text('方框'); elem.draggable(); $('body').append(elem); }); });

阿晨1998
TA貢獻2037條經驗 獲得超6個贊
$( ".draggable" ).draggable();
↑ 只是對 “當前” 所有 .draggable 啟用拖拽
而你的 B 是 “事后” 加的
如果要讓 B 也可以拖,只需在生成的時候再次調用 draggable
- 2 回答
- 0 關注
- 282 瀏覽
添加回答
舉報
0/150
提交
取消