使用Sortables()函数(Mootools库)时遇到问题。
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块,应该可以排序。第二级DIV里面有SELECT标签。
问题是这些下拉列表在单击时不会丢失。单击只是属于父DIV元素,onStart函数启动。如何解决这个问题?
答案 0 :(得分:0)
右。所以基本上你想要点击下拉菜单而不是触发排序?这将是棘手的,因为它在父级上使用委托事件并且它起泡。此外,在select上编写脚本点击事件也不可靠,因此您无法阻止click事件可靠传播 - 至少在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/
为停止冒泡的选择添加了一个点击处理程序。