JQueryUI-可以选择多个参数吗?

时间:2010-08-03 19:53:25

标签: javascript jquery-ui

我正在尝试使我的拖动对象以及它们包含的div互相攻击。这可能吗?这有效:

$($element).draggable({         
            snap: true          
        })

但是这(以及它的变体)不会:

$($element).draggable({
            snap: true, '#mainwindow'
        })

任何人都知道如何为多个参数提供选项吗?

2 个答案:

答案 0 :(得分:0)

在jQueryUI网站上,example with snap on draggable()包含以下代码:

<script type="text/javascript">
 $(function() {
  $("#draggable").draggable({ snap: true });
  $("#draggable2").draggable({ snap: '.ui-widget-header' });
  $("#draggable3").draggable({ snap: '.ui-widget-header', snapMode: 'outer' });
  $("#draggable4").draggable({ grid: [20,20] });
  $("#draggable5").draggable({ grid: [80, 80] });
 });
</script>

所以我认为snap: '#mainwindow'可能会成功。另外,我没有尝试过这个,所以我不确定它是否可能(其他人可以纠正我,因为我不熟悉jQueryUI,虽然它看起来很棒)但是如果你创建一个回调函数来处理snap事件怎么办:

$($element).draggable({
   snap: function(event, ui) {/* insert functionality */}
});

答案 1 :(得分:0)

$($element).draggable({
            snap: true, '#mainwindow'
        })

此示例不是合法的JavaScript / JSON。你需要像...这样的东西。

{
  snap: [true, '#mainwindow']
}

我不认为draggable()会除外。

  

我正试图让我的拖车抓住   彼此以及他们的   包含div。

尝试给每个draggable和包含div的类似“snappable”的类并传递

{
  snap: ".snappable"
}