JQuery的siblings很好用,但假設不使用JQ的情況下要怎麼呈現呢
使用原生JS:
<ul>
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
    <li>Item 4</li>
    <li id="find-me">Item 5</li>
    <li>Item 6</li>
    <li>Item 7</li>
    <li>Item 8</li>
    <li>Item 9</li>
</ul>
<script>
    let getSiblings = function (el) {
    //取出父層第一個子元素
    let sibling = el.parentNode.firstChild;
    //建立一個siblings空陣列
    let siblings = [];
    //如果有sibling子元素執行迴圈
    while (sibling) {
    //節點類型為元素節點 且 sibling不等於自己 就push到siblings
        if (sibling.nodeType === 1 && sibling != el) {
            siblings.push(sibling);
        }
        //找siblings下一個同層元素
        sibling = sibling.nextSibling;
    }
    //執行至無同層元素回傳至陣列
    return siblings;
    }
    const findme = document.getElementById('find-me');
    let siblings = getSiblings(findme);
    console.log(siblings);
</script>

浣熊 發表在 痞客邦 留言(0) 人氣()

table {
border-collapse: collapse;
border: 1px solid #999;
}
table,
td,
th {
border: 1px solid #999;
padding:3px;
}
DOM節點類型包括: 元素節點(element nodes)、文字節點(text nodes)、註解節點(comment nodes)
Node.nodeType

浣熊 發表在 痞客邦 留言(0) 人氣()

<ul>
<li>item1</li>
<li id="item2">item2</li>
<li>item3</li>
<li>item4</li>
<li>item5</li>
</ul>

浣熊 發表在 痞客邦 留言(0) 人氣()

« 1 2 3
Blog Stats
⚠️

成人內容提醒

本部落格內容僅限年滿十八歲者瀏覽。
若您未滿十八歲,請立即離開。

已滿十八歲者,亦請勿將內容提供給未成年人士。