• 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、当点击第二次的时候。不再显示!!




  • 相关阅读:
    我有好多东西要学
    不科学计数法
    遍历生成dataframe
    搭建个人博客,Docsify+Github webhook+JGit解决方案
    从1开始实现一个中间件
    python通过youget下载B站系列视频
    JS 中深拷贝的几种实现方法
    addEventListener() 方法,事件监听
    css背景透明文字不透明
    如何理解dispatch( 'tagsView/delAllViews',null,{root:true} )里面的root:true
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/6698027.html
Copyright © 2020-2023  润新知