Mootools 1.2教程(17)——手风琴插件(3)
作者:Fdream 来源:Fdream博客 发布时间:2008-12-11 13:39:00
标签:mootools,手风琴,插件,教程,javascript
实例演示
这里我们有一个全功能的手风琴,使用了上面我们看到的所有事件和方法,还有非常多的选项。仔细阅读下面的代码和代码内相关的注释,看看它们是怎么使用的。
参考代码:
// 把开关元素和内容元素赋值给两个变量
var toggles = $$('.togglers');
var content = $$('.elements');
// 建立一个对象变量
// 使用new创建一个新的手风琴对象
// 设置开关数组
// 设置内容数组
// 设置相关选项和事件
var AccordionObject = new Accordion(toggles, content, {
// 当页面载入后
// 这将显示(show)内容元素(对应索引的元素)
// 没有任何渐变动画,只是展开
// 同时注意:如果你使用了“fixedHeight”,
// 当页面第一次载入时,show选项将不会起作用
// "show"选项会覆盖"display"选项
show: 0,
// 当页面载入后
// 这将显示(display)内容元素(对应索引的元素)
// 内容展开时将有渐变动画
// 如果同时设置了display选项和show选项
// show选项将覆盖display选项
// display: 0,
// 默认为true
// 这将创建一个垂直的手风琴
height : true,
// 这是水平手风琴参数使用的
// 由于牵涉到CSS,这个会比较复杂
// 我们在后面的某一讲中再讲一下?
width : false,
// 默认为true
// 这将会给内容一个不透明度的渐变效果
opacity: true,
// 默认为false,也可以是一个整数 -
// 将固定所有内容区块的高度
// 需要设置css中的overflow规则
// 如果使用了"show",在页面第一次载入时不会生效
fixedHeight: false,
// 可以为false或者一个整数
// 和上面的fixedHeight类似,
// 不过这是针对水平手风琴的设置
fixedWidth: false,
// 可以让你开关一个展开的项
alwaysHide: true,
// 标准的onComplete事件
// 为每一个内容块元素传递一个变量
onComplete: function(one, two, three, four, five){
one.highlight('#5D80C8'); // 蓝色
two.highlight('#5D80C8');
three.highlight('#5D80C8');
four.highlight('#5D80C8');
five.highlight('#5D80C8'); // 这是添加的节
$('complete').highlight('#5D80C8');
},
// 这个事件将在你开关一个元素时触发
// 将会传递正在打开的开关元素
// 和内容元素
onActive: function(toggler, element) {
toggler.highlight('#76C83D'); // 绿色
element.highlight('#76C83D');
$('active').highlight('#76C83D');
},
// 这个事件将在一个元素开始隐藏时触发
// 将会传递所有正在关闭的元素
// 或者没有展开的元素
onBackground: function(toggler, element) {
toggler.highlight('#DC4F4D'); // 红色
element.highlight('#DC4F4D');
$('background').highlight('#DC4F4D');
}
});
$('add_section').addEvent('click', function(){
// 新增加的节是成对的
// (包括开关的id和相关的内容的id)
// 后面是它们要放置的位置的索引
AccordionObject.addSection('togglersID', 'elementsID', 0);
});
$('display_section').addEvent('click', function(){
// 将决定哪个元素在页面第一次载入时显示
// 将覆盖display选项的设置
AccordionObject.display(4);
要注意的地方
.display可以识别索引(index),不过如你使用了addSection方法,那么这一节将使用最后一个索引
更多手风琴选项、事件和方法
手风琴(Accordion)类继承自Fx.Element类,而Fx.Element类又继承自Fx类。你可以使用这些类的各种选项来优化你的手风琴(Accordion)。虽然它看起来是个很简单的东西,但是手风琴是一个非常有用和强大的插件。我非常乐意看到有人利用这个做出的任何效果。
更多学习
参考文档中的accordion这一节,还有Fx.Elements和Fx这两节。你还可以看看MooTools官方demo中的accordion的使用。
asp之家下载地址:mootorial_day17_accordion.zip (37.00 KB)
包括MooTools 1.2的核心库和扩展(更多)库,上面的示例,一个外部的JavaScript文件,一个简单的HTML页面和一个CSS文件。


猜你喜欢
- 在SQL Server中,如果我想授予一个用户klb拥有创建表的权限,但是我又不想授予其数据库角色db_ddladmin,因为这样会扩大其权
- NumPy是Python中众多科学软件包的基础。它提供了一个特殊的数据类型ndarray,其在向量计算上做了优化。这个对象是科学数值计算中大
- 百度AI功能还是很强大的,百度AI开放平台真的是测试接口的天堂,免费接口很多,当然有量的限制,但个人使用是完全够用的,什么人脸识别、MQTT
- 反射在Python中,能够通过一个对象,找出type、class、attribute或者method的能力,成为反射。函数与方法内建函数:g
- 当鼠标移动上去后,字慢慢的变大的 效果应该 如果实现啊<!DOCTYPE html PUBLIC "-//W3C//DTD
- Web Standards Solutions The Markup and Style Handbook - Chapter 1 清单首发
- 一个简单的实现class NaiveFilter():'''Filter Messages from keyword
- 站长用Python写了一个可以提取csv任一列的代码,欢迎使用。Github链接csv是Comma-Separated Values的缩写,
- 导读你真的知道CHAR和VARCHAR类型在存储和读取时的区别吗?还是先抛几条结论吧:1、存储的时候,CHAR总是会补足空格后再存储,不管用
- ECMAScript 5.1规范§15.4.4.4 中说到:concat函数是有意设计成通用的;它并不要求它的this值必须得是个Array
- 微信小程序 滚动选择器(时间日期)详解微信小程序自己封装了很多控件,用起来确实很方便,如果这是Android里面,还需要自己去定
- 一、前言既然在Pathlib库中提到了glob()函数,那么我们就专门用一篇内容讲解文件名的匹配。其实我们有专门的一个文件名匹配库就叫:gl
- Cookie的英文原意是“点心”,它是在客户端访问Web服务器时,服务器在客户端硬盘上存放的信息,好像是服务器发送给客户的“点心”。服务器可
- 一、业务需求在使用Python进行业务开发的时候,需要将一些数据保存到本地文件存储,方便后面进行数据分析展示。二、需求分析通过查看需求可得出
- 使用非常简单,小伙伴们只要修改对应的参数即可,这里就不多废话了,直接奉上实例吧。<div class="txt1"
- webpack项目中自动引入全局scss变量文件假设我们有一个公共的scss变量文件variables.scss/*存放所有全局变量*/$c
- from flask import requestFlask 是一个人气非常高的Python Web框架,笔者也拿它写过一些大大小小的项目,
- 支持实时监控sliderbar的数据,允许有callback回调的函数,有示例1、可自定样式SetStyle() 2、带有onSroll功能
- 有个简单的查看方法,打开记事本,如要查看“Chr("119") w”,可以按下Alt+119 (先按住Alt不放,然后输
- 背景golang 中主推 channel 通信。单个 channel 的通信可以通过一个goroutine往 channel 发数据,另外一