jquery ui droppable使用

jquery ui 提供了 许多好用并且精美的 工具和widget,特效等

其中包括 draggalbe(拖放对象)、droppable(允许拖放到某对象中)、resizable(可自由拉动大小)、dialog(对话框)、datepicker(日期工具)、autocomplete(输入联想提示).可以说jquery ui 几乎涵盖了许多 互动ui效果,后续还有可能添加其他功能木块,其官网为http://jqueryui.com, 要想使用上述功能请下载http://jqueryui.com/download/,截止本文版本为1.9.0。

本文主要想描述的是jquery的拖放和施放功能,这个功能使用好的话,可用作可视化的模板,所见即所得思想、如visualstudio 功能,左边工具栏,将工具栏内的工具碎片拉到右边面板中即可看到想要的页面效果。

前边已有一篇文章说明了draggalbe这个功能,这篇文章主要描述droppable.

draggable主要功能是讲对象木块进行拖曳, 而droppable功能主要是 允许某移动对象的是施放, 并且可以监控移动对象拖到droppalble对象之上,和施放之后可以做的逻辑。

下边描述这个接口的使用

 1、事件

  (1)activate

     [产生影响]

         这个事件会在任何允许的draggable对象开始拖动时触发.

          它可以用来在你想让droppable对象在可以被填充的时"亮起来"的时候.

     [代码示例]

      $('.selector').droppable({  activate:function(event, ui) { ... }  });

  (2)deactivate

    [产生影响]

         此事件会在任何允许的draggable对象停止拖动时触发.

    [代码示例]

         $('.selector').droppable({    deactivate: function(event, ui) { ... }  });

  (3)over

    [产生影响]

      此事件会在一个允许的draggable对象"经过"(根据tolerance参数的定义判断)这个droppable对象时触发.

    [代码示例]

         $('.selector').droppable({    over: function(event, ui) { ... }  });

  (4)out

    [产生影响]

        会在一个允许的draggable对象离开(根据tolerance参数的定义判断)这个droppable对象时触发.

    [代码示例]

        $('.selector').droppable({    out: function(event, ui) { ... }  });

  (5)drop

    [产生影响]

        这个事件会在一个允许的draggable对象填充进这个droppable对象时触发.

        回调函数中, $(this) 表示被填充的droppable对象.ui.draggable 表示draggable对象.

    [代码示例]

        $('.selector').droppable({    drop: function(event, ui) { ... }  });

 

2、参数(选项)


  (1)accept

    [类型]Selector,Function
   [默认值]'*'
      接受所有符合选择器条件的draggable对象. 如果指定了一个函数,该函数要求为页面上每个draggable对象(符合函数第一个条件的对象)提供一个过滤器.如果要这些元素被dropable接受,该函数需要返回true.

   [代码示例]

      使用指定的accept参数初始化一个droppable.
      $('.selector').droppable({ accept: '.special' });

   (2)activeClass

    [类型]String
    [默认值]false

    [产生影响]
       如果指定了该参数,在被允许的draggable对象填充时,droppable会被添加上指定的样式.

   [代码示例]

       使用指定的activeClass参数初始化一个droppable.
       $('.selector').droppable({ activeClass: '.ui-state-highlight'});

  (3)addClasses

    [类型]Boolean
    [默认值]true

    [产生影响]
      如果设置为false, 可以防止ui-droppable类在进行时添加.这可能会使在初始化数百个元素执行.droppable()时使性能得到理想的优化.

    [代码示例]

       使用指定的addClasses参数初始化一个droppable.
       $('.selector').droppable({ addClasses: false });
   (4)greedy

    [类型]Boolean
    [默认值]false

     [产生影响]
        如果设置为true,将在嵌套的droppable对象中阻止事件的传播.(阻止事件向上冒泡)

    [代码示例]

        使用指定的greedy参数初始化一个droppable.
        $('.selector').droppable({ greedy: true });
  (5)hoverClass

     [类型]String
     [默认值]false

     [产生影响]
          如果设置了该参数,将在一个被允许的draggable对象悬停在droppable对象上时向droppable对象添加一个指定的样式.

      [代码示例]

          使用指定的hoverClass参数初始化一个droppable.
          $('.selector').droppable({ hoverClass: 'drophover' });
   (6)scope

     [类型]String
     [默认值]'default'

      [产生影响]
          用来设置draggle对象和droppable对象的组,除了droppable中的accept属性指定的元素外,和droppable对象相同组的draggable对象也被允许添加到droppable对象中.

     [代码示例]

          使用指定的scope参数初始化一个droppable.
          $('.selector').droppable({ scope: 'tasks' });
   (7)tolerance

     [类型]String

         允许使用的值: 'fit', 'intersect', 'pointer', 'touch'.

             fit: draggable 完全重叠到droppable
             intersect: draggable 和droppable至少重叠50%
             pointer: 鼠标重叠到droppable
             touch: draggable和droppable的任意重叠
     [默认值]'intersect'
     [产生影响]

         指定使用那种模式来测试一个draggable"经过"一个droppable对象.

     [代码示例]

 

         使用指定的tolerance参数初始化一个droppable.
          $('.selector').droppable({ tolerance: 'fit' });




  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值