【问题标题】:jquery draggable with hidden contentjquery可拖动隐藏内容
【发布时间】:2012-11-08 16:48:08
【问题描述】:

我正在使用可拖动和可排序的列表在它们之间拖动和排序项目。但是,我拥有的项目是可滑动的(即单击它们会显示/隐藏内容)。当我将一个项目从一个列表拖到另一个列表时,滑动效果会丢失。此外,如果我有一个隐藏其子节点的项目,并且我将该项目拖动到另一个列表,则仅拖动该项目(没有任何子内容)。这是代码

http://jsbin.com/ujivav/1/edit

【问题讨论】:

    标签: jquery draggable jquery-ui-sortable hidden


    【解决方案1】:

    KHY 是正确的,但您也可以将 click 事件更改为使用 on,如下所示:

    $('body').on('click', '.clicktohide',function(){
        $(this).siblings().slideToggle('fast');
    });
    

    这是一个例子http://jsbin.com/ujivav/4/edit

    【讨论】:

      【解决方案2】:

      我相信这是因为一旦加载了初始页面,就会发生与“click”事件的绑定。鉴于在您的示例中,在被拖动后,具有“.clicktohide”类的元素被复制,复制的元素不在“click”事件所绑定的选择中。

      我猜你必须通过实现触发“停止”事件时调用的回调函数来将此事件绑定到拖动的元素上。

      【讨论】:

      • 我是 JS 和 jQuery 新手,能否请您更具体地了解一下“停止”事件。在这种情况下我会在哪里使用它?
      【解决方案3】:

      看起来“克隆”并没有重新创建事件处理程序,只是重新创建了 DOM 元素。尝试在“停止”事件上手动复制。这样你就可以告诉它如何处理新的 DOM 元素。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-10-17
        • 2013-06-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-25
        • 1970-01-01
        相关资源
        最近更新 更多