【问题标题】:drag & drop not working when page loaded in a parent div在父 div 中加载页面时拖放不起作用
【发布时间】:2014-02-12 01:12:08
【问题描述】:

我有一个应用程序,它包含 32 个名称的列表,并允许将它们拖放到 9 个单独的 div 中,然后在这 9 个 div 之间拖放。

当页面单独执行时,它可以完美运行。

但是,当页面加载到父 div 中时,功能会变得很糟糕。我只能拖放一次。当我尝试将名称从九个 div 之一拖放到另一个 div 时,我可以拖动它,但是当它被放下时,它会返回到原来的位置。

这是拖放代码

$(document).ready (function (){

$('.draggable').draggable(
{revert:'invalid'}
)



$('.droppable').droppable({
    tolerance:'intersect',
    drop: function (event,ui){
    $(this).addClass ('person');
    $(this).append ('<p class="draggable">'+$(ui.draggable).text()+'</p>');
    $(ui.draggable).remove();
    $('.draggable').draggable({
      revert:'invalid',    
  }); 

} }

这是将页面加载到父 div 中的简单代码

$('button.worklist').click (function (){
   $('div#content').load ('worklist.php');
})

所以问题就变成了,当 UI 事件页面加载到 div 时,我需要做些什么才能让它们正常运行吗?

【问题讨论】:

    标签: jquery drag-and-drop


    【解决方案1】:

    worklist.php的内容加载到div#content后,需要重新初始化拖放功能。

    拖放功能在document.ready() 中仅针对当前页面上的项目进行初始化。如果页面中添加了更多的项目,则需要重新初始化拖放方法。

    【讨论】:

    • 谢谢,但我认为这不是答案。也许我一开始并不清楚。 draggable 和 droppable 在将它们加载到 div#content 的页面上初始化,它们在加载的页面上初始化。我已经尝试在加载工作列表后初始化它们并且没有任何变化。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-02
    • 1970-01-01
    • 1970-01-01
    • 2016-05-01
    • 1970-01-01
    相关资源
    最近更新 更多