index封装

就是求元素在父级当中的位置:

思路:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<ul id="a">
    <li id="foo">foo</li>
    <li id="bar">bar</li>
    <li id="baz">baz</li>
</ul>
</body>
</html>
<script type="text/javascript">
    function a(obj) {
        var b = obj.parentNode.children;
        var i=0;
        for(i=0;i<b.length;i++){
            if(b[i] == obj){
                return i;
            }
        }
    }
    window.onload = function () {
        var li = document.getElementsByTagName("li")
        var i=0;
        for(i=0;i<li.length;i++){
            li[i].onclick = function () {
                alert(a(this));
            }

        }
    }
</script>

封装:

//index,求元素在父级当中的位置
function getIndex(obj) {
    var aBrother = obj.parentNode.children;
    var i=0;
    for(i=0;i<aBrother.length;i++){
        if(aBrother[i] == obj){
            return i;
        }
    }
}
VQuery.prototype.index = function () {
    return getIndex(this.elements[0]);
};

详细可查VQuery的封装。

原文地址:https://www.cnblogs.com/wang715100018066/p/6323039.html