我需要能够拖动页面上的所有.note
,但是当我使用jQuery UI中的draggable()
时,它只适用于第一个.note
。我已经下载了jQuery UI并且正在运行。当我点击页面时,它会生成一个新的.note
,所以我认为这是一个克隆问题。这是代码
HTML:
<body>
<div id="wrapper">
<div id="wrp">
<h1>Click to make a new note!!!</h1>
<hr>
<div class="note">
<p class="remove"><b>X</b>
</p>
<div class="time"></div>
<hr>
<textarea class="item"></textarea>
<div class="saved"><span class="msg"></span>
</div>
</div>
</body>
JS:
$(".note").closest('.note').draggable();
(我不会包括我所有的JS)
在这里小提琴:http://jsfiddle.net/cjhind/zfxj3cps/46/
有任何建议吗?
答案 0 :(得分:1)
在onclick函数中添加此额外行,因为jquery无法识别新项目。就像它已经使用.note定位项目一样,你需要重新定位它们。请小心,因为这将再次加载脚本,它将采取两次行动。因此,您插入的许多项目都可以通过firebug看到它更多次调用脚本。如果您需要更多信息,请告诉我们。
$('#wrp, #wrapper').click(function showNote() {
$('.note').fadeIn();
$(".note").closest('.note').draggable(); // ADD THIS TO GIVE YOUR NOTE THE ABILTY TO BE DRAGABLE
});
&#13;
这有帮助吗?