关注图老师设计创意栏目可以让大家能更好的了解电脑,知道有关于电脑的更多有趣教程,今天给大家分享MooTools教程(15):滚动条(Slider)教程,希望对大家能有一点小小的帮助。
【 tulaoshi.com - Web开发 】
到现在为止,初始化这些MooTools插件对象就会开始变得越来越熟悉。滚动条(Slider)没有任何不同,你要创建一个新的滚动条,定义滚动条和滑块相关的元素,然后设置你的选项,再创建一些回调事件的控制函数。尽管滚动条(Slider)遵循这个熟悉的模式,但是任然还有一点特殊的地方。
基本用法创建一个新的滚动条(Slider)对象我们首先从HTML和CSS开始。基本的想法是创建一个滚动条的div,因此是一个长的长方形(长度取决于我们用滚动条做什么),还有一个子元素作为滑块。
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)参考代码: div id=div id=/div/div我们的CSS也可以这么简单。只需要设置宽、高,还有背景颜色。
参考代码: #slider { : : : #} #knob { : : : #}现在,我们可以创建我们的新滚动条对象了。要初始化滚动条,首先要把你的相关元素赋值给一些变量,然后使用new来创建一个滚动条Slider对象,这和我们以前创建tween、morph和drag.move时一样:
参考代码: sliderObject = $(); knobObject = $(); SliderObject = Slider(sliderObject , knobObject , { range: [, ], snap: , steps: , offset: , wheel: , mode: , onChange: (step){ }, onTick: (pos){ .knob.setStyle(, pos); }, onComplete: (step){ }});Slider的选项Snap:(默认为false),可以是一个true或者false值。这决定了滑块是不是以最小单元格移动
Offset:(默认是0),这是滑块相对于开始的位置。你可以对此做一个试验。
Range:(默认是false),这是一个非常有用的选项。你可以设置一个数字范围,会依照此数字和你的步数(step)触发onchange事件。例如:如果你设置的范围是[0, 200],而且你设置的step值为10,那么每次onchange的step的值将是20。这个范围也是是负数,例如[-10,0],这个数字在做反向的滚动条时会非常有用(下面有示例)。
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)Wheel:(默认是false),如果设置这个参数为true,这个滚动条将会识别鼠标滚轮事件。当使用鼠标滚轮时,你肯恩需要调整range参数,以保证鼠标滚轮事件的行为不是相反的(同样,后面会有例子)。
Steps:(默认是100),默认值为100非常有用,因为它可以很容易地作为百分比使用。当然,你也可以以你的理由设置任意多步(这是可以的)。
Mode:(默认是horizontal),这个参数定义了滚动条是水平滚动还是垂直滚动。当然了,要从水平滚动转化为垂直滚动还需要一些其它步骤。
回调事件onChange:当step改变时,触发这个事件。同时传递参数step。可以从下面的例子中看到它是什么时候触发的。
onTick:当控制点的位置发生改变时触发这个事件。同时传递参数position。可以从下面的例子中看到它是什么时候触发的。
onComplete:当控制点释放时触发这个事件。捅死传递参数step。可以从下面的例子中看到它是什么时候触发的。
代码示例让我们建立一个示例,以便看看它们的效果。
.set();方法:看一看按钮上的事件,看是怎么使用.set()方法的。它使用起来非常简单:调用slider对象,附加.set,然后是你想要滚动的步数(step)。
参考代码: window.addEvent(, () { SliderObject = Slider(, , { range: [, ], snap: , steps: , offset: , wheel: , mode: , onChange: (step){ $().highlight(); $().set(, step); }, onTick: (pos){ $().highlight(); $().set(, pos); .knob.setStyle(, pos); }, onComplete: (step){ $().highlight() $().set(, step); .set(step); }}); SliderObjectV = Slider(, , { range: [-, ], snap: , steps: , offset: , wheel: , mode: , onTick: (pos){ .knob.setStyle(, pos); }, onChange: (step){ $().set(, step*-); }}); SliderObjectV.set(); $().addEvent(, (){ SliderObject.set()}); });onChange
注意:至于onTick事件中top和left的使用,我不确定这是不是MooTools中的规则。这只是我让它们正确运行的一种方法,我很有兴趣听到一些其他的清楚的说法。
更多学习和以前一样,请参考文档中的。
包括MooTools 1.2的核心库和扩展库,还有一个外部的JavaScript文件,一个简单的HTML页面和一个CSS文件和上面的示例。
来源:http://www.tulaoshi.com/n/20160220/1632391.html
看过《MooTools教程(15):滚动条(Slider)》的人还看了以下文章 更多>>