jQuery語(yǔ)法——移動(dòng)節(jié)點(diǎn),改變節(jié)點(diǎn)順序

在jQuery中,我們可以使用after()before()方法來(lái)實(shí)現(xiàn)移動(dòng)HTML的元素節(jié)點(diǎn),改變節(jié)點(diǎn)的順序。

一、基礎(chǔ)頁(yè)面

  • 基礎(chǔ)頁(yè)面中是一個(gè)ul列表,我們以改變其中的紅色<li>標(biāo)簽為例,演示如何使用jQuery改變?cè)毓?jié)點(diǎn)的順序。基礎(chǔ)頁(yè)面如下:
  • HTML代碼:
<button class="move-up">上移</button>
<button class="move-down">下移</button>

<ul class="box">
    <li>我是一個(gè)普通的li標(biāo)簽</li>
    <li>我是一個(gè)普通的li標(biāo)簽</li>
    <li>我是一個(gè)普通的li標(biāo)簽</li>
    <li>我是一個(gè)普通的li標(biāo)簽</li>
    <li>我是一個(gè)普通的li標(biāo)簽</li>
    <li>我是一個(gè)普通的li標(biāo)簽</li>
    <li>我是一個(gè)普通的li標(biāo)簽</li>
    <li>我是一個(gè)普通的li標(biāo)簽</li>
    <li>我是一個(gè)普通的li標(biāo)簽</li>
    <li class="move">我是會(huì)動(dòng)的li標(biāo)簽</li>
</ul>
  • CSS代碼:
button{
    width: 100px;
    height: 30px;
    display: inline-block;
    border-radius: 10px;
    border: none;
    background-color: #0d3349;
    color: #fff;
}
.move{
    color: red;
    font-weight: bolder;
}

二、向上移動(dòng)元素節(jié)點(diǎn)

$(function(){
    $('.move-up').click(function(){
        var cur_li = $('.move');
        var prev_li = cur_li.prev();     // 獲取當(dāng)前節(jié)點(diǎn)的上一個(gè)節(jié)點(diǎn)
        // 把當(dāng)前節(jié)點(diǎn)插入到上一個(gè)節(jié)點(diǎn)之前,如果不存在上一個(gè)節(jié)點(diǎn),說(shuō)明已經(jīng)到達(dá)頂部
        if(prev_li.length != 0){
            prev_li.before(cur_li);
        }
        else {
            alert("元素已經(jīng)到頂部!");
        }
    });
    
});

三、向下移動(dòng)元素節(jié)點(diǎn)

$(function(){
    $('.move-down').click(function(){
        var cur_li = $('.move');
        var next_li = cur_li.next();     // 獲取當(dāng)前節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn)
        // 把當(dāng)前節(jié)點(diǎn)插入到下一個(gè)節(jié)點(diǎn)之后,如果不存在下一個(gè)節(jié)點(diǎn),說(shuō)明已經(jīng)到達(dá)底部
        if(next_li.length != 0){
            next_li.after(cur_li);
        }
        else {
            alert("元素節(jié)點(diǎn)已經(jīng)到底部!");
        }
    });
效果演示:

四、將元素移動(dòng)到頂部/底部

  • 其實(shí),將元素移動(dòng)到頂部和底部是非常簡(jiǎn)單的。
  • 移動(dòng)到頂部:只需要獲取當(dāng)前ul中的第一個(gè)li標(biāo)簽,然后將該元素插入第一個(gè)標(biāo)簽之前即可完成。
  • 移動(dòng)到底部:獲取當(dāng)前ul中的最后一個(gè)li標(biāo)簽,然后將鈣元素插入到最后一個(gè)標(biāo)簽之后即可完成。
  • 示例代碼:
$(function () {
    // 移動(dòng)到頂部
    $('.go-up').click(function () {
        var cur_li = $('.move');
        var first_li = $('.box li').eq(0);
        first_li.before(cur_li);
    });
    
    // 移動(dòng)到底部
    $('.go-down').click(function () {
        var cur_li = $('.move');
        var last_li = $('.box li').last();
        last_li.after(cur_li);
    });
});
  • 效果展示:
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML標(biāo)準(zhǔn)。 注意:講述HT...
    kismetajun閱讀 28,858評(píng)論 1 45
  • 問(wèn)答題47 /72 常見(jiàn)瀏覽器兼容性問(wèn)題與解決方案? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,180評(píng)論 1 92
  • 前端開(kāi)發(fā)面試題 <a name='preface'>前言</a> 只看問(wèn)題點(diǎn)這里 看全部問(wèn)題和答案點(diǎn)這里 本文由我...
    自you是敏感詞閱讀 905評(píng)論 0 3
  • 前端開(kāi)發(fā)面試題 面試題目: 根據(jù)你的等級(jí)和職位的變化,入門級(jí)到專家級(jí),廣度和深度都會(huì)有所增加。 題目類型: 理論知...
    怡寶丶閱讀 2,694評(píng)論 0 7
  • 我對(duì)面的女生,張小北,典型的黃色性格,目標(biāo)極強(qiáng),工作起來(lái)也非常有效率。但是我今天要說(shuō)的不是她的這個(gè)品質(zhì),我想說(shuō)一說(shuō)...
    HoneyReiki閱讀 510評(píng)論 0 1

友情鏈接更多精彩內(nèi)容