• javascript--枚举算法实现


    <!doctype html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <script type="text/javascript">
            //枚举算法--》穷举算法
            window.onload=function  () {
                var aA=document.getElementsByTagName('a');//get A
                var oUl=document.getElementById('uli');//get ul
                var aLi=document.getElementsByTagName('li');//get li
    
                for (var i = 0; i < aA.length; i++) {//给A加入点击事件
                    aA[i].onclick=function  () {//给每一个里加入点击事件
                        if(mj(this.innerHTML)){//没有同样的
                            var oLi=document.createElement('li');
                            oLi.innerHTML=this.innerHTML;
                            if(aLi[0]){
                                oUl.appendChild(oLi);//第一次显
                            }else{
                                oUl.insertBefore(oLi, aLi[0])//仅仅要点击即显示在最前面
                            }
                            
                        }else{//有同样的。不再显示
                            mj2(this.innerHTML);
                        }
                    };
                };
                function mj (text) {//推断是否存在相通的Li
                    var result=true;
                    for (var i = 0; i < aLi.length; i++) {
                        if(aLi[i].innerHTML==text){
                            result=false;
                        }
                    };
    
                    return result;
                }
    
                function mj2 (text) {//存在同样的li时。将当前的Li加入在第一个位置!
                    for (var i = 0; i < aLi.length; i++) {
                        if(aLi[i].innerHTML==text){
                            oUl.insertBefore(aLi[i], aLi[0])
                        }
                    };
    
                
                }
            }
        </script>
    </head>
    <body>
        <a href="javascript:;">北京</a>
        <a href="javascript:;">上海</a>
        <a href="javascript:;">杭州</a>
        <a href="javascript:;">天津</a>
        <a href="javascript:;">武汉</a>
        <a href="javascript:;">长沙</a>
        <a href="javascript:;">广州</a>
        <a href="javascript:;">神州</a>
        
        <ul id="uli">    
        </ul>
    
    </body>
    </html>

    1、点击当中一个。显示在最前面!

    2、当点击第二次的时候。不再显示!!




  • 相关阅读:
    Javascript操作cookie
    上传文件-layui+ashx
    Mysql对查询结果添加序列号
    Maven详解
    解决 go iris ReadJSON 无法获取 json,并提示 unexpected end of JSON input 的错误
    Archlinux 最新安装方法 (2020.07.01-x86_64)之虚拟机 BIOS 安装
    Oracle APEX 发送邮件
    包管理Go module的使用
    Golang 解决 Iris 被墙的依赖包
    解决 Nginx 代理Apex慢的问题
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/6698027.html
Copyright © 2020-2023  润新知