首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >函数排序表(Mootools库)

函数排序表(Mootools库)
EN

Stack Overflow用户
提问于 2011-06-27 18:14:07
回答 1查看 530关注 0票数 0

我在使用Sortables()函数(Mootools库)时遇到了一个问题。

代码语言:javascript
复制
    this.sort=new Sortables(this.box,{
        onStart: function(el){el.setStyles({'background':'#f0f0f0','opacity':1});},
        onComplete: function(el){el.setStyle('background','none');this.setEditor();}.bind(this)
    });

事实上,我有一个DIV,它包含其他DIV块,这些块应该是可排序的。第二级的DIVs里面有SELECT标签。

问题是这些下拉列表在单击时不会下降。单击恰好落在父DIV元素上,onStart函数启动。如何解决这个问题呢?

原型:http://jsfiddle.net/uCM2R/3/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-27 19:24:43

mootools 1.12?哈哈。

正确的。所以基本上你希望在下拉列表上点击一下就不会触发排序?这将是棘手的,因为它在父级上使用委托事件,并且它是冒泡的。此外,在select上编写点击事件脚本也是不可靠的,所以你不能阻止点击事件可靠地传播-至少在1.12中是这样。1.3.2就可以了。

考虑在select上使用handles: "div.foo"选项,这是一个子div,允许它们移动东西,而不是整个div。

http://jsfiddle.net/dimitar/uCM2R/4/

显然,在div.foo句柄中,您可以放置一些指示移动的图标。只有它们将用作排序的拖动点,从而使您能够处理没有干涉的选择。

根据您的原始规范/标记,它在1.3.2中:http://jsfiddle.net/dimitar/uCM2R/6/

为停止冒泡的选择添加了一个单击处理程序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6491374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档