【问题标题】:Jquery DroppablejQuery Droppable
【发布时间】:2014-04-21 16:27:02
【问题描述】:

以下是我的 jquery 代码,我可以通过 jquery 对象访问 gallery-folder 属性,但 droppable 无法处理它

$(function() {
        jQuery(document).find('#am-container').find('img').draggable({revert: true});
        jQuery(document).find("#gallary-folder").droppable({
            drop: function(event, ui) {
                var draggableSrc = ui.draggable.attr("src");
                var gallery_id = $(this).find('li').attr("id");
            }
        });
    });

以下是我的 HTML

 <div id="gallery-folder" class="gallery-folder ui-droppable">
    <div class="gallery-folder-inner">
     <a href="gallery_view.php?id=22&gallery_name=Clothes123">
      <img width="68" height="48" src="images/icon-2.png"> </a>
    </div>
</div>

这是小提琴http://jsfiddle.net/gV7da/4/

【问题讨论】:

  • 您使用jQuery(document).find('#ele')而不是$('#ele')的任何原因?
  • @Wex:我认为他们是一样的,这就是我坚持老派的原因
  • 你的小提琴有revert: "true"应该在哪里(正如你在问题中写的那样)revert: truetrue周围没有引号)。然后,只要把saveImageAfterDrag这个没有定义的调用注释掉,抛出一个错误,我看不出是什么问题。
  • @noobie-php 只是 $('#ele') 是少了一个函数调用,因此速度更快 - 即使稍微如此。运行 $(document) 从 DOM 元素 'document' 及其所有子元素创建一个 jQuery 对象,而 $('#ele') 为 ID 为 'ele' 的 DOM 元素及其所有子元素创建一个 jQuery 对象。您的方式(根据我的理解,如果我错了,任何人都可以纠正我)更长,因为 find() 函数必须遍历 $(document) 中的所有对象,直到找到“ele”。我认为您与 document.getElementById('ele') 混淆了

标签: jquery jquery-ui jquery-ui-droppable


【解决方案1】:

我看到了你的小提琴。这工作正常。您可能无法真正将图像放到目标上。

意味着您需要将可拖动对象的中心拖动到目标对象的范围内。它必须有效:)

【讨论】:

    猜你喜欢
    • 2016-04-08
    • 2012-01-14
    • 1970-01-01
    • 2014-05-07
    • 2013-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多