Cet article présente principalement l'imitation véridique de querySeletor pour obtenir la compatibilité avec IE 67. Il a une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer
<!doctype html> <html> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta name="Description" content=""> <title>仿Jquery查询</title> </head> <body> <div id="box"> <ul id="ulBox" class="ulBox" > <li></li> <li></li> <li></li> </ul> </div> <script type="text/javascript" src="DomUtil.js"></script> <script type="text/javascript"> function $(str){ /*#box .ulBox li*/ /* var currentEle=document; 先取到#box 然后得到#box元素 保存在currentEle中 然后在#box元素下取到.ulBox 考虑到类不是一个 所以一般取第一个操作就行 $(".box")[0] 保存在currentEle中 然后在ul.box 下取到 li 保存在currentEle中 每次查到元素 都要保存在一个变量中以便下次搜索时用 符串是用空格分开的 所以可以用 str.split(" ")分成好几个在遍历操作; */ currentEle=document;//保存每次查询的元素节点 var arr=str.split(" ");//把字符串按空格分开变成数组 var len=arr.length; for(var i=0;i<len;i++) { var firstSign = arr[i].substr(0,1); if(firstSign!="." && firstSign!="#" ) { var name=arr[i].substr(0); } else{ var name =arr[i].substr(1); } switch(firstSign) { case "." : currentEle=getElementsByClassName(name)[0]; break; case "#" : currentEle=currentEle.getElementById(name); break; default : currentEle=currentEle.getElementsByTagName(name); } } return currentEle; } console.log($(".box .ulBox li")); </script> </body> </html>
Ce qui précède. C'est le contenu de cet article. Tout le contenu, j'espère qu'il sera utile à l'étude de tout le monde. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !
Recommandations associées :
Comment utiliser js natif pour implémenter Ajax
Analyse de Sizzle, le moteur de sélection dans jQuery
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!