大脑洞开的 上移下移

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="智能社 - zhinengshe.com" />
<meta name="copyright" content="智能社 - zhinengshe.com" />
<title>智能社 - www.zhinengshe.com</title>
<style>
* {margin:0; padding:0; list-style:none;}
#ul1 {width:600px; margin:10px auto;}
#ul1 li {border:1px solid #CCC; padding:4px;}
#ul1 span {width:500px; display:inline-block;}
</style>
<script>
window.onload=function (){
    var oUl=document.getElementById(‘ul1‘);
    var aLi=oUl.children;

    for (var i=0; i<aLi.length; i++)
    {
        aLi[i].setAttribute(‘index‘, i);

        var aA=aLi[i].getElementsByTagName(‘a‘);
        var oPrevBtn=aA[0];
        var oNextBtn=aA[1];

        oPrevBtn.onclick=function (){
            var n=this.parentNode.getAttribute(‘index‘);

            if (n==0)
            {
                alert(‘已经是最上面了‘);
                return;
            }

            var oLi1=this.parentNode;//当前元素的父元素,即当前的li
            var oLi2=oUl.children[n-1];//当前元素的父元素的下一个兄弟元素,即当前的Li的兄弟li

            oUl.insertBefore(oLi1, oLi2);
            // 换下标
            var n2=oLi2.getAttribute(‘index‘);
            oLi1.setAttribute(‘index‘, n2);
            oLi2.setAttribute(‘index‘, n);
        };

        oNextBtn.onclick=function (){
            var oLi1=this.parentNode;
            var n1=parseInt(oLi1.getAttribute(‘index‘));

            if (n1==aLi.length-1) // 最后一个
            {
                alert(‘当前已经是最后一个了‘);
                return;
            }
            else if (n1==aLi.length-2) // 倒数第二个
            {
                var oLi2=aLi[aLi.length-1];
                var n2=oLi2.getAttribute(‘index‘);
                oLi2.setAttribute(‘index‘, n1);
                oLi1.setAttribute(‘index‘, n2);

                oUl.appendChild(oLi1);
            }
            else // n+2
            {
                var oLi2=aLi[n1+2];
                var oNextLi=aLi[n1+1];
                var oNextIndex=oNextLi.getAttribute(‘index‘);
                oNextLi.setAttribute(‘index‘, n1);
                oLi1.setAttribute(‘index‘, oNextIndex);

                oUl.insertBefore(oLi1, oLi2);
            }
        };
    }
};
</script>
</head>

<body>
<ul id="ul1">
    <li>
        <span>0.中央军委晋升四名上将 习大大颁命令状</span>
        <a href="javascript:;" class="prev">上移</a>
        <a href="javascript:;" class="next">下移</a>
    </li>
    <li>
        <span>1.李克强:建良好生态环境向全民提供</span>
        <a href="javascript:;" class="prev">上移</a>
        <a href="javascript:;" class="next">下移</a>
    </li>
    <li>
        <span>2.江西涉贪9400万元官员移民后获刑</span>
        <a href="javascript:;" class="prev">上移</a>
        <a href="javascript:;" class="next">下移</a>
    </li>
    <li>
        <span>3.31个省级纪委书记平均57.6岁 逾6成异地调任</span>
        <a href="javascript:;" class="prev">上移</a>
        <a href="javascript:;" class="next">下移</a>
    </li>
</ul>
</body>
</html>

真是大脑洞开,哈哈

时间: 2024-10-10 00:16:08

大脑洞开的 上移下移的相关文章

AngularJS实现数据列表的增加、删除和上移下移等功能实例

转: http://www.jb51.net/article/91991.htm 这篇文章给大家分享了AngularJS循环实现数据列表的增加.删除和上移下移等基础功能,对大家学习AngularJS具有一定的参考借鉴价值,有需要的朋友可以看看. 效果图 实例代码 <!DOCTYPE html> <html lang="en" ng-app="myapp" ng-controller="myCtrl"> <head&g

利用jQuery操作select列表选项的上移下移示例

导读:本文实现了一个简单的select列表选项的上移下移操作,可帮助读者了解jQuery选择器,节点操作的一些常用方法 实现的效果: 分享代码: 1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="MoveNode_Default" %> 2 3 <!DOCTYPE html PUBLIC &

js 上移下移行

function up_tr(sender) {                            var tr = $(sender).parent().parent();                            var table = tr.parent();                            var first = $("tr:first", table);                            if (tr.html() =

JS移动li行数据,点击上移下移(是位置的互换,不是top的偏移量改变)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta content="text/html; cha

jquery行上移下移删除

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

php修改排序,上移下移

php修改排序,上移下移 /**  $UpDown //移动方向,up或down  $table //表名  $id //当前移动的ID  $id_col //ID字段的名称  $oc_col //排序字段的名称  $where //条件 */ function MoveUpDown($UpDown,$table,$id,$id_col='id',$oc_col='OrderColumn',$where='')  {    if($UpDown=='up'){$op='<';$desc='des

TcxTreeList 节点 上移 下移 代码

if not Assigned(cxDBTreeList1.FocusedNode) then Exit; // 上移方法: with cxDBTreeList1 do FocusedNode.MoveTo(FocusedNode.getPrevSibling, tlamInsert); // 下移方法: with cxDBTreeList1 do FocusedNode.getNextSibling.MoveTo(FocusedNode, tlamInsert); TcxTreeList 节点

上移下移扩展版 【总结】

需求 上移下移 需求: 1)点击上移就将当前的按钮的父级上移一位 2)当点击第一个时候将当前按钮的父级移动到最后一位 3)当点击最后一个时候将当前按钮的父级移动到首位 4)带过渡动画 需求分析: 下移:剪切所点击的条目插入到下一条目后面 上移:剪切所点击的条目插入到上一条目前面 过渡效果实现:CSS3的transition 或 js实现 实现思路: transition实现方法,先在CSS里设置好transition: 1s top; 这个样式,然后鼠标点击修改top值触发过渡效果. 需要用js

wpf listbox 选中项 上移下移

原文:wpf listbox 选中项 上移下移 private void MoveUp_Click(object sender, RoutedEventArgs e) ?? ? ? ?{ ?? ? ? ? ? ?DataRowView rowView = this.listScrip.SelectedItem as DataRowView; ?? ? ? ? ? ?if (rowView == null) ?? ? ? ? ? ?{ ?? ? ? ? ? ? ? ?return; ?? ? ?