欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS實現(xiàn)一個列表中包含上移下移刪除等功能

 更新時間:2014年09月24日 15:36:14   投稿:whsnow  
一個項目,包括了一個列表頁其中包括在列表中實現(xiàn)上移,下移,刪除等功能,為了用戶體驗,操作均使用JS實現(xiàn)

最近做了一個項目,包括了一個列表頁,為了用戶體驗,操作均使用JS實現(xiàn),其中包括在列表中實現(xiàn)上移,下移,刪除等功能,前臺JS,后端數(shù)據(jù)修改使用AJAX,本文主要說一下前臺JS這塊

先看一下頁面的截圖

看一下它的HTML結(jié)構(gòu),當(dāng)然,這與前臺切圖有關(guān),后端程序人員只負責(zé)寫自己的JS這塊,我以我們項目為例,看一下它們切的HTML

<ul class="clearfix">
<li class="courseList">
<div class="titDefault clearfix">
<div class="left clearfix">
<span class="dragBtn"></span><span class="tit">內(nèi)容<em class="contIndex">1</em>:</span><em title="2013年 加班.txt" class="titDefaultName">2013年 加班.txt</em>
</div>
<div class="mid">2014/9/24 9:54:00</div>
<div class="right clearfix">
<a value="253040" class="moveUpBtn" href="javascript:;"><span class="delTit">上移</span></a>
<a value="253040" class="moveDownBtn" href="javascript:;"><span class="delTit">下移</span></a>
<a value="253040" class="deleteBtn" href="javascript:;"><span class="delTit">刪除</span></a>
</div>
</div>
</li>
<li class="courseList">
<div class="titDefault clearfix">
<div class="left clearfix">
<span class="dragBtn"></span><span class="tit">內(nèi)容<em class="contIndex">2</em>:</span><em title="使用說明.txt" class="titDefaultName">使用說明.txt</em>
</div>
<div class="mid">2014/9/24 9:54:00</div>
<div class="right clearfix">

<a value="253041" class="moveUpBtn" href="javascript:;"><span class="delTit">上移</span></a>
<a value="253041" class="moveDownBtn" href="javascript:;"><span class="delTit">下移</span></a>
<a value="253041" class="deleteBtn" href="javascript:;"><span class="delTit">刪除</span></a>
</div>
</div>
</li>
<li class="courseList">
<div class="titDefault clearfix">
<div class="left clearfix">
<span class="dragBtn"></span><span class="tit">內(nèi)容<em class="contIndex">3</em>:</span><em title="占占大師.txt" class="titDefaultName">占占大師.txt</em>
</div>
<div class="mid">2014/9/24 9:54:00</div>
<div class="right clearfix">
<a value="253040" class="moveUpBtn" href="javascript:;"><span class="delTit">上移</span></a>
<a value="253040" class="moveDownBtn" href="javascript:;"><span class="delTit">下移</span></a>
<a value="253040" class="deleteBtn" href="javascript:;"><span class="delTit">刪除</span></a>
</div>
</div>
</li>
<li class="courseList">
<div class="titDefault clearfix">
<div class="left clearfix">
<span class="dragBtn"></span><span class="tit">內(nèi)容<em class="contIndex">4</em>:</span><em title="排序問題.txt" class="titDefaultName">排序問題.txt</em>
</div>
<div class="mid">2014/9/24 9:54:00</div>
<div class="right clearfix">

<a value="253041" class="moveUpBtn" href="javascript:;"><span class="delTit">上移</span></a>
<a value="253041" class="moveDownBtn" href="javascript:;"><span class="delTit">下移</span></a>
<a value="253041" class="deleteBtn" href="javascript:;"><span class="delTit">刪除</span></a>
</div>
</div>
</li>
</ul>

下面我們主要看一下JS代碼,主要使用JQ的on方法實現(xiàn)的,原因是因為列表的數(shù)據(jù)有第一次為靜態(tài)的(bind),當(dāng)排序后,數(shù)據(jù)變?yōu)閯討B(tài)的(live),所以,這種結(jié)構(gòu)只能使用on才最合理,看一下代碼

<script type="text/ecmascript">
$(function () {
//上移
$(".clearfix").on("click", ".moveUpBtn", function () {
var self = $(this);
var _old = self.closest("li.courseList");
var _new = self.closest("li.courseList").prev("li");
if (_new.length > 0) {
var _temp = _old.html();
_old.empty().append(_new.html());
_new.empty().append(_temp);
}

});

//下移
$(".clearfix").on("click", ".moveDownBtn", function () {
var self = $(this);
var _old = self.closest("li.courseList");
var _new = self.closest("li.courseList").next("li");
if (_new.length > 0) {
var _temp = _old.html();
_old.empty().append(_new.html());
_new.empty().append(_temp);
}
});

//刪除
$(".clearfix").on("click", ".deleteBtn", function () {
var self = $(this);//當(dāng)前click事件源對象
self.closest("li.courseList").remove();
});

});
</script>

運行之后,效果就出來了,本JS中沒有把與后臺交互的AJAX方法寫出來,大家可以根據(jù)具體情況而定。

相關(guān)文章

  • 理解javascript封裝

    理解javascript封裝

    這篇文章主要幫助大家理解學(xué)習(xí)javascript封裝,通過封裝可以強制實施信息隱藏,本文為大家分析了封裝的利弊,感興趣的小伙伴們可以參考一下
    2016-02-02
  • 深入淺析JavaScript中with語句的理解

    深入淺析JavaScript中with語句的理解

    JavaScript 有個 with 關(guān)鍵字, with 語句的原本用意是為逐級的對象訪問提供命名空間式的速寫方式。這篇文章主要介紹了JavaScript中with語句的相關(guān)知識,感興趣的朋友一起學(xué)習(xí)吧
    2016-05-05
  • JavaScript代碼實現(xiàn)txt文件的上傳預(yù)覽功能

    JavaScript代碼實現(xiàn)txt文件的上傳預(yù)覽功能

    本篇文章給大家介紹了JavaScript代碼實現(xiàn)txt文件的上傳預(yù)覽功能,文字代碼相結(jié)合的形式給大家介紹的非常詳細,需要的朋友參考下吧
    2018-03-03
  • JavaScript RegExp 對象用法詳解

    JavaScript RegExp 對象用法詳解

    這篇文章主要介紹了JavaScript RegExp 對象用法詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • 淺析JavaScript中命名空間namespace模式

    淺析JavaScript中命名空間namespace模式

    namespace即“命名空間”,也稱“名稱空間” 、”名字空間”。接下來通過本文給大家介紹JavaScript中命名空間namespace模式的相關(guān)知識,非常不錯,具有參考借鑒價值,感興趣的朋友一起學(xué)習(xí)吧
    2016-06-06
  • Json按某個鍵的值進行排序

    Json按某個鍵的值進行排序

    這篇文章主要介紹了json按某個鍵的值進行排序的相關(guān)資料,代碼簡單易懂,非常不錯,需要的朋友可以參考下
    2016-12-12
  • Javascript中定義方法的另類寫法(批量定義js對象的方法)

    Javascript中定義方法的另類寫法(批量定義js對象的方法)

    用了很多的Javascript框架,偶爾也會去看一下框架的源碼,經(jīng)常會看到這樣的代碼。
    2011-02-02
  • 基于JavaScript構(gòu)建一個動態(tài)博客應(yīng)用

    基于JavaScript構(gòu)建一個動態(tài)博客應(yīng)用

    這篇文章主要為大家詳細介紹了如何基于JavaScript構(gòu)建一個動態(tài)博客應(yīng)用,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-02-02
  • JS實現(xiàn)的走迷宮小游戲完整實例

    JS實現(xiàn)的走迷宮小游戲完整實例

    這篇文章主要介紹了JS實現(xiàn)的走迷宮小游戲,涉及javascript鍵盤事件響應(yīng)及頁面元素動態(tài)變換相關(guān)操作技巧,需要的朋友可以參考下
    2017-07-07
  • 基于JavaScript判斷瀏覽器到底是關(guān)閉還是刷新(超準(zhǔn)確)

    基于JavaScript判斷瀏覽器到底是關(guān)閉還是刷新(超準(zhǔn)確)

    這篇文章主要介紹了基于JavaScript判斷瀏覽器到底是關(guān)閉還是刷新(超準(zhǔn)確)的相關(guān)資料,需要的朋友可以參考下
    2016-02-02

最新評論