如何在YUI中禁用滑块勾选?

时间:2011-08-09 09:24:13

标签: javascript slider yui

我在我的应用程序中使用YUI滑块控件。我想禁用滑块刻度,以便用户无法根据应用程序的条件移动它。怎么做?请有人帮助我。

3 个答案:

答案 0 :(得分:1)

有一种名为lock()的方法

http://developer.yahoo.com/yui/docs/YAHOO.widget.Slider.html#method_lock 为此

你说你试过了,但你究竟怎么称呼这种方法?

答案 1 :(得分:1)

雅,我知道现在有点晚了,但它总比没有好。我试图解决这个问题几个小时。我希望我的解决方案有所帮助。

滑块的锁定()可以禁用滑块的拖放/键控/点击交互,但它会以某种方式锁定()在'slideStart'事件。因此,即使您调用slider.setValue()来填充滑块的值,它也总是在最左边的位置锁定(),例如0

IMO,最好的方法如下:

slider.setValue(100, false);

if(!writePermission) {
  slider.subscribe('slideEnd', function(){slider.lock();}); //locks slider when it ends the drag animation
}
只有当用户点击滑块的背景但用户仍然可以拖动滑块的拇指时,timmow的解决方案才有效。

答案 2 :(得分:0)

您需要订阅滑块触发的事件 - 这些事件记录为here,还有here,因为滑块继承了拖放小部件

例如,以下内容应该有效

YAHOO.widget.Slider.cutslid.subscribe('b4MouseDownEvent', function() {YAHOO.widget.Slider.cutslid.lock()});