js--模仿jQuery的選取器

來源:互聯網
上載者:User

標籤:def   直接   charset   sub   nbsp   efault   fun   body   break   

之前剛好想要簡單的模仿jQuery的選取器,今天就剛好學到了,簡單點,功能也沒有jQuery的完美,實用方便,但是勉強還可以用。

 

<!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8">    <title></title>    <style>        div{            width: 100px;            height: 100px;            background-color: pink;            margin: 10px;        }    </style></head><body><div class="dome"></div><div></div><div class="test"></div><div></div><div class="dome test"></div><div></div><div></div><div></div><div class="dome"></div><div></div><script>        $(".dome")[0].style.backgroundColor = "blue";    function $(str){        var s = str.charAt(0);        var ss = str.substr(1);        switch(s){            case "#":                return document.getElementById(ss);                break;            case ".":                return getClass(ss);                break;            default :                return document.getElementsByTagName(ss);        }    }    function getClass(className){        //如果瀏覽器支援著,則直接返回        if(document.getElementsByClassName){            return document.getElementsByClassName(className);        }        //不支援的瀏覽器        var  arr = [];        var dom = document.getElementsByTagName("*");        for(var i=0; i < dom.length; i++){//                if(dom[i].className == className){//                    arr.push(dom[i]);//                }i            //改進後的class            var  txt = dom[i].split(" ");//["dome","test"]            for(var j=0; j < txt.length; j++){                if(txt[j] == className){                    arr.push(dom[i]);                }            }        }        return arr;    }</script></body></html>

  

js--模仿jQuery的選取器

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.