快速业务通道

MooTools教程(15):滚动条(Slider)

作者 佚名技术 来源 网页制作 浏览 发布时间 2012-03-07

Slider的选项

Snap:(默认为false),可以是一个true或者false值。这决定了滑块是不是以最小单元格移动

Offset:(默认是0),这是滑块相对于开始的位置。你可以对此做一个试验。

Range:(默认是false),这是一个非常有用的选项。你可以设置一个数字范围,会依照此数字和你的步数(step)触发onchange事件。例如:如果你设置的范围是[0, 200],而且你设置的step值为10,那么每次onchange的step的值将是20。这个范围也是是负数,例如[-10,0],这个数字在做反向的滚动条时会非常有用(下面有示例)。

Wheel:(默认是false),如果设置这个参数为true,这个滚动条将会识别鼠标滚轮事件。当使用鼠标滚轮时,你肯恩需要调整range参数,以保证鼠标滚轮事件的行为不是相反的(同样,后面会有例子)。

Steps:(默认是100),默认值为100非常有用,因为它可以很容易地作为百分比使用。当然,你也可以以你的理由设置任意多步(这是可以的)。

Mode:(默认是“horizontal”),这个参数定义了滚动条是水平滚动还是垂直滚动。当然了,要从水平滚动转化为垂直滚动还需要一些其它步骤。

回调事件

onChange:当step改变时,触发这个事件。同时传递参数“step”。可以从下面的例子中看到它是什么时候触发的。

onTick:当控制点的位置发生改变时触发这个事件。同时传递参数“position”。可以从下面的例子中看到它是什么时候触发的。

onComplete:当控制点释放时触发这个事件。捅死传递参数“step”。可以从下面的例子中看到它是什么时候触发的。

代码示例

让我们建立一个示例,以便看看它们的效果。

.set();方法:看一看按钮上的事件,看是怎么使用.set()方法的。它使用起来非常简单:调用slider对象,附加.set,然后是你想要滚动的步数(step)。

参考代码: [复制代码] [保存代码]
  1. window.addEvent(''domready''function() {
  2. var SliderObject = new Slider(''slider''''knob'', {
  3.     // 选项
  4.     range: [010],
  5.     snap: false,
  6.     steps: 10,
  7.     offset: 0,
  8.     wheel: true,
  9.     mode: ''horizontal'',
  10.  
  11.     // 回调事件
  12.     onChange: function(step){
  13.         $(''change'').highlight(''#F3F825'');
  14.         $(''steps_number'').set(''html'', step);
  15.     },
  16.     onTick: function(pos){
  17.         $(''tick'').highlight(''#F3F825'');
  18.         $(''knob_pos'').set(''html'', pos);
  19.         // 这一行是必需的(水平滚动使用left)
  20.         this.knob.setStyle(''left'', pos);
  21.  
  22.     },
  23.     onComplete: function(step){
  24.         $(''complete'').highlight(''#F3F825'')
  25.         $(''steps_complete_number'').set(''html'', step);
  26.         this.set(step);
  27.     }
  28. });
  29.  
  30. var SliderObjectV = new Slider(''sliderv''''knobv'', {
  31.     range: [-100],
  32.     snap: true,
  33.     steps: 10,
  34.     offset: 0,
  35.     wheel: true,
  36.     mode: ''vertical'',
  37.     onTick: function(pos){
  38.         // 这一行是必需的(垂直滚动使用top)
  39.         this.knob.setStyle(''top'', pos);
  40.     },
  41.     onChange: function(step){
  42.         $(''stepsV_number'').set(''html'', step*-1);
  43.     }
  44. });
  45.  
  46. // 设置垂直滚动的从0开始
  47. // 否则的话是从顶部开始
  48. SliderObjectV.set(0);
  49.  
  50. // 设置滚动条从7开始
  51. $(''set_knob'').addEvent(''click''function(){ SliderObject.set(7)});
  52.  
  53. });

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号