jak*_*ent 6 javascript jquery jquery-ui
我有两个jquery.ui draggables.我限制他们移动到y轴.如果将一个拖动到某个y位置,我希望另一个自动移动到相同的y位置,反之亦然.有没有人曾经将其中的两个联系在一起?
Mot*_*tie 12
更新:脚本和演示已更新,因此拖动时不再限制为y轴.
此脚本查找类"group",后跟一个数字以拖放这些组合对象.我在这里发布了一个演示.
HTML
<div class="demo">
<div id="draggable">
<p>Drag from here</p>
<div class="dragme group1"><img src="image1.jpg"><br>Group 1</div>
<div class="dragme group1"><img src="image2.jpg"><br>Group 1</div>
<div class="dragme group2"><img src="image3.jpg"><br>Group 2</div>
<div class="dragme group2"><img src="image4.jpg"><br>Group 2</div>
</div>
<div id="droppable">
<p>Drop here</p>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
脚本
$(document).ready(function() {
// function to get matching groups (change '.group' and /group.../ inside the match to whatever class you want to use
var getAll = function(t) {
return $('.group' + t.helper.attr('class').match(/group([0-9]+)/)[1]).not(t);
};
// add drag functionality
$(".dragme").draggable({
revert: true,
revertDuration: 10,
// grouped items animate separately, so leave this number low
containment: '.demo',
stop: function(e, ui) {
getAll(ui).css({
'top': ui.helper.css('top'),
'left': 0
});
},
drag: function(e, ui) {
getAll(ui).css({
'top': ui.helper.css('top'),
'left': ui.helper.css('left')
});
}
});
$("#droppable").droppable({
drop: function(e, ui) {
ui.draggable.appendTo($(this));
getAll(ui).appendTo($(this));
}
});
});
Run Code Online (Sandbox Code Playgroud)
我之前没有这样做,但我建议使用drag事件调整相应其他元素的位置:
$('.selector').draggable({
...,
drag: function(event, ui) {
},
...
});
Run Code Online (Sandbox Code Playgroud)
该ui对象将包含ui.offset您可以用于手动重新定位其他元素的信息(在属性中).
| 归档时间: |
|
| 查看次数: |
6578 次 |
| 最近记录: |