1
在拖放区域后拖动不起作用。我用这个Jquery UI。我如何重新拖动按钮?我不想把它粘在一个特定的位置,这样我就可以将它重新放置在棋盘上的任何位置。如何在使用jQuery UI进行拖放后启用拖动?
这里是链接http://www.onlinedemowebsite.com/design/swatch/drag-and-drop/
<script type="text/javascript">
$(document).ready(function(){
for (var i = 1; i <= 225; i++) {
$('.board').append($('<div/>',{id:"cell_"+i}));
}
$('.board div').addClass('cellBox');
$('.board .cellBox').append('<span>Drop</span>');
$(".letters").draggable({
revert: true,
snap:true,
snap: '.cellBox', snapMode: 'inner', snapTolerance:40,
});
$(".board").droppable({
activeClass: 'ui-state-hover',
hoverClass: 'ui-state-active',
over: function(event, ui) {
$('.ui-draggable-dragging').addClass('lettersBig');
},
out: function(event, ui) {
$('.ui-draggable-dragging').removeClass('lettersBig');
},
drop: function(event, ui) {
$('.ui-draggable-dragging').addClass('onCell');
$(ui.draggable).draggable('enable');
if (ui.draggable.is('.letters')) {
$(this).addClass('ui-state-highlight').find('span').html('got!');
// cloning and appending prevents the revert animation from still occurring
ui.draggable.clone(true).css({position:relative,top:0,left:0}).appendTo($(this));
ui.draggable.remove();
} else {
$('.cellBox > span').html('No!')
setTimeout(function(){ $('.cellBox > span').html('Drop'); }, 1000);
}
}
});
})
的HTML代码如下
<div class="container">
<div class="board">
</div>
<!--/board-->
<div class="lettersContainer">
<div class="letters">
<span>A</span>
</div>
<!--/letters-->
<div class="letters correct">
<span>X</span>
</div>
<!--/letters-->
<div class="letters">
<span>M</span>
</div>
<!--/letters-->
</div>
<!--/lettersContainer-->
感谢您的回复。如果你看到代码我试图通过添加 $(ui.draggable).draggable('enable'); 但它不工作。 你可以请建议如何使它 – Krishnendu 2012-03-29 07:25:36
@Krishnendu我已经改变了droppable函数。请亲切看它 – 2012-03-29 07:46:41
不客气......! – 2012-03-29 09:45:53