用Mootools获得操作索引的两种方法分享


Posted in Javascript onDecember 12, 2011

我们先说一下第一种方法,(此方法为一位QQ好友提供,感谢此人,此人昵称是:exf)

<body> 
<ul>Title1 
<li>11111</li> 
</ul> 
<ul>Title2 
<li>22222</li> 
</ul> 
<ul>Title3 
<li>33333</li> 
</ul> 
<ul>Title4 
<li>44444</li> 
</ul> 
<script type='text/javascript'> 
ul=$$('ul'); 
ul.addEvent('click',function(){ 
alert(ul.indexOf(this)); 
}); 
</script>

其实除了上边的方法外还有一种方法也能得到索引值,看下边的例子:
<body> 
<ul>Title1 
<li>11111</li> 
</ul> 
<ul>Title2 
<li>22222</li> 
</ul> 
<ul>Title3 
<li>33333</li> 
</ul> 
<ul>Title4 
<li>44444</li> 
</ul> 
<script type='text/javascript'> 
ul=$$('ul'); 
ul.each(function($I,i){ 
$I.onclick=function(){ 
alert(i); 
}; 
}) 
</script>

两种方法孰优孰劣一看便知,第一种方法需要再次使用indexOf函数判断,而第二种方式直接是作为参数把索引值传递进去了,就不需要额外的计算了.因此如果您需要获取索引值得时候推荐使用第二种方法.

下边我写了一个手风琴插件用来演示两种方法在实际应用过程中的表现.

<style type="text/css"> 
ul,li{font-size:12px;font-family:arial;padding:0;margin:0;} 
ul{width:300px;line-height:24px;font-weight:bold;background-color:#C1C2C1;border-bottom:1px solid #fff;text-indent:10px;} 
li{list-style:none;font-weight:normal;background-color:#e1e1e1;} 
</style> 
</head> 
<body> 
<ul>Title1 
<li>11111</li> 
</ul> 
<ul>Title2 
<li>22222</li> 
</ul> 
<ul>Title3 
<li>33333</li> 
</ul> 
<ul>Title4 
<li>44444</li> 
</ul> 
<script type='text/javascript'> 
var Acc=new Class({ 
Implements:[Options,Events], 

options:{ 


$Boxtit:false 

}, 

initialize:function(options){//初始化构造函数 


this.setOptions(options);//?置options 


if(!this.options.$Boxtit){return false;} 



this.Core(); 


}, 


Core:function(){ 



$Boxtit=this.options.$Boxtit; 



$Boxmsg=$Boxtit.getElement('li'); 



$Boxmsg.setStyle("display","none"); 



$Boxtit.each(function($I,i1){ 




$I.onclick=function(){ 





//i2=$Boxtit.indexOf(this);console.log(i1+'|'+i2);//??的i1和i2???上都是索引值 





$Boxmsg.setStyle("display","none"); 





this.getElement('li').setStyle("display",""); 




}; 


}) 

} 
}); 
new Acc({$Boxtit:$$('ul')}); 
</script>

只不过在上边的插件中为了提高效率,因此我使用了this,这样比用索引找寻DOM效率更高一些.
Javascript 相关文章推荐
javascript中的变量是传值还是传址的?
Apr 19 Javascript
利用jquery动画特效和css打造的侧边弹出垂直导航
Apr 04 Javascript
Js实现动态添加删除Table行示例
Apr 14 Javascript
详细介绍jQuery.outerWidth() 函数具体用法
Jul 20 Javascript
浅谈javascript中遇到的字符串对象处理
Nov 18 Javascript
JS变量及其作用域
Mar 29 Javascript
利用JQuery操作iframe父页面、子页面的元素和方法汇总
Sep 10 jQuery
JS实现自定义状态栏动画文字效果示例
Oct 12 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
Mar 13 jQuery
小程序数据通信方法大全(推荐)
Apr 15 Javascript
Vue表单之v-model绑定下拉列表功能
May 14 Javascript
axios实现文件上传并获取进度
Mar 25 Javascript
整理8个很棒的 jQuery 倒计时插件和教程
Dec 12 #Javascript
关于event.cancelBubble和event.stopPropagation()的区别介绍
Dec 11 #Javascript
Jquery阻止事件冒泡 event.stopPropagation
Dec 11 #Javascript
远离JS灾难css灾难之 js私有函数和css选择器作为容器
Dec 11 #Javascript
EasyUI的treegrid组件动态加载数据问题的解决办法
Dec 11 #Javascript
FireFox下XML对象转化成字符串的解决方法
Dec 09 #Javascript
一个简单的js树形菜单
Dec 09 #Javascript
You might like
for循环连续求和、九九乘法表代码
2012/02/20 PHP
采用memcache在web集群中实现session的同步会话
2014/07/05 PHP
php实现生成code128条形码的方法详解
2017/07/19 PHP
php 广告点击统计代码(php+mysql)
2018/02/21 PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
2019/10/14 PHP
解析js如何获取当前url中的参数值并复制给input
2013/06/23 Javascript
jQuery中操控hidden、disable等无值属性的方法
2014/01/06 Javascript
jQuery简易图片放大特效示例代码
2014/06/09 Javascript
javascript实现playfair和hill密码算法
2014/12/07 Javascript
jQuery分组选择器用法实例
2014/12/23 Javascript
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
基于Bootstrap使用jQuery实现简单可编辑表格
2016/05/04 Javascript
简单掌握JavaScript中const声明常量与变量的用法
2016/05/21 Javascript
JavaScript实战之菜单特效
2016/08/16 Javascript
Js得到radiobuttonlist选中值的两种方法(推荐)
2016/08/25 Javascript
微信小程序新增的拖动组件movable-view使用教程
2017/05/20 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
2017/07/21 Javascript
AngularJS2 与 D3.js集成实现自定义可视化的方法
2017/12/01 Javascript
jQuery实现的点击标题文字切换字体效果示例【测试可用】
2018/04/26 jQuery
微信小程序12行js代码自己写个滑块功能(推荐)
2020/07/15 Javascript
JS倒计时两种实现方式代码实例
2020/07/27 Javascript
python打包压缩、读取指定目录下的指定类型文件
2018/04/12 Python
python/sympy求解矩阵方程的方法
2018/11/08 Python
把django中admin后台界面的英文修改为中文显示的方法
2019/07/26 Python
python中如何进行连乘计算
2020/05/28 Python
CSS3提交意见输入框样式代码
2014/10/30 HTML / CSS
美国孩之宝玩具官网:Hasbro Pulse
2019/06/24 全球购物
精细化工应届生求职信
2013/11/17 职场文书
八年级历史教学反思
2014/01/10 职场文书
职工运动会邀请函
2014/01/19 职场文书
大学学雷锋活动总结
2014/06/26 职场文书
史上最牛的辞职信
2015/02/28 职场文书
医院办公室主任岗位职责
2015/04/01 职场文书
关于环保的广播稿
2015/12/17 职场文书
CSS font-variation 可变字体的魅力(实例详解)
2022/03/03 HTML / CSS
Oracle 多表查询基本语法实例
2022/04/18 Oracle