一、index函数容易出错的地方

jQuery中index()返回的值经常是不准确的,例如下面返回的值就不是我们想要的值,这种情况非常尴尬,如果对index()函数不深刻理解是很容易出错的,并且原因非常难发现:
图片描述

原因很简单:以上写法是返回相对于div的子元素中,p标签的位置,并不是这个点击的p标签相对div下所有p标签的位置,这个相对于谁是个很重要的问题。很多新手会出现这个错误!

二、深刻了解index


$("span").mouseover(function(){
    alert($(this).index())                        // 相对父元素索引        
    
    alert($("div span").index($(this)))           //相对div下的所有span的索引
    alert($("div span").index(this))              //同上
    alert($(this).index("div span"));             //同上
            
    alert($("span").index($(this)))               //相对所有span集合的索引
    alert($("span").index(this))                  //同上
    alert($(this).index("span"))                  //同上
})    

东搞西搞
49 声望2 粉丝