當前位置:軟件學堂 > 資訊首頁 > 網絡編程 > 編程其他 > JS代碼改變列表項的上下順序

JS代碼改變列表項的上下順序

2012/10/25 18:12:25作者:佚名來源:網絡

移動端

【實例名稱】

JS代碼改變列表項的上下順序

【實例描述】

列表項的上下移動,是網頁中經常使用的特效。本例通過一個簡單的例子,學習這種特效的制作。

【實例代碼】

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>標題頁-學無憂(yzddtk.cn)</title>
</head>
<body>
<select size="10" name="select">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
</select>
<input type=button value=向上移動 onclick="doUp()">
<input type=button value=向下移動 onclick="doDown()">
<script>
function doOrder(select,sequence)  
//將上、下兩個方法合并成一個
{
   if (!select||select.selectedIndex==-1) 
//如果沒有選擇列表項,不進行任何操作
        return false;
   with (select)
   {   
    var newIndex = selectedIndex + sequence; 
//獲取移動后的索引
    var oldIndex = selectedIndex;         
//舊索引
    if (newIndex>=options.length||newIndex<0||sequence==0||newIndex<0) 
//判斷是否超出邊界
    {
        return false; 
    }
    options[newIndex].swapNode(options[oldIndex])  
//交換指定索引處的節(jié)點
 }
 return true;
}
function doUp()
{
   doOrder(document.all.select,-1);  
//向上移動的方法
}
function doDown()
{
   doOrder(document.all.select,1);   
//向下移動的方法
}
</script>
</body>
</html>
 

【運行效果】

運行效果

【難點剖析】

本例的重點是要移動的元素的舊位置和新位置,舊位置使用“selected Index”屬性獲取,新位置根據選擇的是‘‘向上移動”還是“向下移動”,下就“+1”,上就“一1”。最后使用“swapNode’’方法實現(xiàn)新舊位置互換。

【源碼下載】

本實例JS代碼下載

 

標簽: JS代碼  列表項