教程集 www.jiaochengji.com
教程集 >  jQuery  >  jquery 教程  >  正文 jquery索引在使用中的一些困惑

jquery索引在使用中的一些困惑

发布时间:2014-04-28   编辑:jiaochengji.com
为什么现在弹出来每个button(在ul li中的)的索引值都是零,为什么不是从0-9排列的等等一系列问题将在本文为大家详细介绍下
今日同事很正式的向我提出了两个关于jquery的问题,我也很正式得做了回答,顺便把源码贴到这里希望对朋友们有所帮助:
复制代码 代码如下:

<script type="text/javascript">
$(function(){
$("input[type=button]").click(function(){
alert($(this).index());
})
})
</script>
<ul>
<li><input type="button" value="按钮一" /></li>
<li><input type="button" value="按钮一" /></li>
<li><input type="button" value="按钮一" /></li>
<li><input type="button" value="按钮一" /></li>
<li><input type="button" value="按钮一" /></li>
<li><input type="button" value="按钮一" /></li>
<li><input type="button" value="按钮一" /></li>
<li><input type="button" value="按钮一" /></li>
<li><input type="button" value="按钮一" /></li>
<li><input type="button" value="按钮一" /></li>
</ul>

问题一:为什么现在弹出来每个button(在ul>li中的)的索引值都是零,为什么不是从0-9排列的;
答:第一个匹配元素的 index,相对于同胞元素,获得第一个匹配元素相对于其同胞元素的 index 位置。请注意是"同胞".
复制代码 代码如下:

<script type="text/javascript">
$(function(){
$("input[type=button]").click(function(){
alert($(this).index());
})
})
</script>
<ul>
<input type="button" value="按钮一" /><br />
<input type="button" value="按钮一" /><br />
<input type="button" value="按钮一" /><br />
<input type="button" value="按钮一" /><br />
<input type="button" value="按钮一" /><br />
<input type="button" value="按钮一" /><br />
<input type="button" value="按钮一" /><br />
<input type="button" value="按钮一" /><br />
<input type="button" value="按钮一" /><br />
<input type="button" value="按钮一" /><br />
</ul>

问题二:为什么在button不在ul>li中,并且每个button后面加<br />的时候,弹出button的索引值翻了一倍,是从0-18的啊?
答:因为<br />也是同胞元素.

以下是在百度百科中查到的"同胞"的含义:
同父母所生的,例如同胞兄弟;

您可能感兴趣的文章:
JQuery困惑—包装集 DOM节点
jquery索引在使用中的一些困惑
关于jquery中全局函数each使用介绍
JQuery优缺点分析说明
jQuery中 wrap() wrapAll() 与 wrapInner()的区别
读jQuery之一(对象的组成)
得到jQuery detach()后节点中的某个值实现代码
mysql中文模糊查找不精确解决办法
mysql索引的建立原则
如何针对Google给网站进行优化

关键词: jquery  索引   
[关闭]
~ ~