在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ 問(wèn)一下原生的js中如何得到td在tr中的索引嗎?類似jQuery中的index(

問(wèn)一下原生的js中如何得到td在tr中的索引嗎?類似jQuery中的index()方法這樣的?


<html>
<body>
<table>
<tr>
<td id="a">1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
</table>
<body>
<script src='http://172.29.5.201/assets/js/core/jquery.min.js'></script>
<script>
alert($("#a").index());</script>
</html>
回答
編輯回答
怣痛
function getIndexFromDomOrSelector(domOrSelector){
    let dom;
    // 檢查是dom還是Selector
    if(domOrSelector instanceof HTMLElement || domOrSelector instanceof Element){
        dom = domOrSelector;
    }else if(typeof domOrSelector === "string"){
        dom = document.querySelector(domOrSelector);
        if(!dom) throw new Error("selector無(wú)效,找不到dom")
    }else{
        throw new Error("參數(shù)不合法");
    }
    // 獲取所有的兄弟節(jié)點(diǎn)
    const brothers = Array.from(dom.parentNode.children);

    return brothers.indexOf(dom);
}

// 方式1
getIndexFromDomOrSelector("#a")
// 方式2
const td = document.getElementById("a");
getIndexFromDomOrSelector(td)
2017年7月19日 15:34
編輯回答
撥弦
function searchIndex(id){
    //獲取 td
    var td = document.getElementById("td");
    //獲取所有的 td
    var arr = Array.from(td.parentNode.children);

    //遍歷
    arr = arr.filter(function(item){
        return td == item;
    });
}
2018年5月18日 01:46