ÔÚ»¥ÁªÍø·ÉËÙÉú³¤µÄ½ñÌì£¬ÍøÒ³µÄ±³ºóÒþ²Ø×ÅÖØ´óµÄDOM£¨Îĵµ¹¤¾ßÄ£×Ó£©Ê÷¡£ÏàʶºÍÕÆÎÕDOMµ¼º½½Úµã£¬¾ÍÏñÓµÓÐÒ»°Ñ·¿ªÍøÒ³ÉñÃØ±¦ÏäµÄÔ¿³×¡£¹ØÓÚǰ¶Ë¿ª·¢Õß¶øÑÔ£¬ÊìϤDOMÊ÷µÄ½á¹¹¡¢½Úµã¼äµÄ¹ØÏµ£¬ÊÇÓÅ»¯Ò³ÃæÐÔÄÜ¡¢ÊµÏÖ¶¯Ì¬½»»¥µÄ»ù´¡¡£ÈôÊÇÄ㻹ÔÚΪÔõÑùѸËÙÕÒµ½Ä³¸öÔªËØ¡¢Ôõô±éÀúÍøÒ³½á¹¹¶øÀ§ÈÅ£¬ÄÇôºûµû½Ì³Ì»á´øÄãÓÃ×îÖ±¹Û¡¢×îÊÊÓõķ½·¨£¬ÇáËÉÕÆÎÕDOM½Úµãµ¼º½¡£
ÎÒÃÇÐèÒªÃ÷ȷʲôÊÇDOM¡£¼òÆÓÀ´Ëµ£¬DOMÊÇä¯ÀÀÆ÷¶ÔÍøÒ³ËùÓÐÄÚÈݵÄÁýͳ±í´ï£¬Ëü°ÑÕû¸öÍøÒ³¿´×÷Ò»¸öÊ÷Ðνṹ£¬Ã¿¸öHTML±êÇ©¶¼ÊÇÒ»¸ö½Úµã¡£¸ù½ÚµãÊÇdocument£¬´ÓËü×îÏÈ£¬·Ö³öÖÖÖÖÔªËØ½Úµã¡¢Îı¾½Úµã¡¢ÊôÐԽڵ㣬ÐγÉÖØ´ó¶øÓÐÐòµÄÊ÷¡£Ã÷È·ÁËÕâÒ»µã£¬Äã¾ÍÄÜÏñµ¼º½Ò»ÕŵØÍ¼Ò»Ñù£¬ÔÚÕâ¿ÃÊ÷ÖÐÕÒµ½ÄãÏëÒªµÄ¡°ËùÔÚ¡±¡£
ÔõÑùÔÚÒ³ÃæÖе¼º½ÕâЩ½Úµã£¿×î½¹µãµÄ¾ÍÊÇÓÃJavaScriptµÄDOMAPI£¬ºÃ±ÈchildNodes¡¢firstChild¡¢lastChild¡¢parentNode¡¢nextSibling¡¢previousSiblingµÈÊôÐÔ¡£ÕâЩÊôÐÔ×é³ÉÁË·½´çÖ®¼äµÄ¡°µ¼º½Íø¡±£¬°ïÄã´©ËóÓÚ½ÚµãÖ®¼ä¡£
µ«ÒªÕæÕýÕÆÎÕÕâЩÊÖÒÕ£¬²»¿ÉֻͣÁôÔÚÀíÂÛÉÏ£¬¸üҪͨ¹ýѵÁ·ºÍʵ¼ùÀ´Éî¿ÌÃ÷È·¡£ºûµû½Ì³ÌÖеÄ×é³É²¿·ÖÕýÊÇÓɸ»ºñµÄʵÀý¡¢ÏêϸµÄ½â˵ºÍʵ²Ù½¨Òé×é³É£¬°ïÄã´Ó¡°ÐÂÊÖ¡±±ä¡°ÄÜÊÖ¡±¡£
ºÃ±È£¬ÄãÏëÕÒµ½Ä³¸öÔªËØµÄËùÓÐ×ӽڵ㣬¿ÉÒÔÓÃchildNodes£¬¶øÖ»ÒªÔªËؽڵã¿ÉÒÔÓÃchildren¡£ÒªÕÒµ½Ðֵܽڵ㣬ÓÃnextSiblingºÍpreviousSibling£¬ÒªÕÒµ½¸¸½Úµã£¬¾ÍÓÃparentNode¡£ÕâЩÊôÐÔÓÌÈçÖ¸ÄÏÕ룬ָÒýÄãÔÚÖØ´óµÄDOMÊ÷Öо«×¼¶¨Î»¡£
Ã÷È·½ÚµãÀàÐÍͬÑùÖ÷Òª¡£Ã¿¸ö½Úµã¶¼¶ÔÓ¦×ÅÒ»ÖÖÀàÐÍ£¬ÈçÔªËØ½Úµã£¨nodeType=1£©¡¢Îı¾½Úµã£¨nodeType=3£©¡¢×¢Êͽڵ㣨nodeType=8£©µÈ¡£ÔÚ²Ù×÷DOMʱ£¬×¼È·ÅжϽڵãÀàÐÍ£¬²Å»ª×èÖ¹ÍÉ»¯£¬È·±£Ò³ÃæµÄÎȹÌÓë¸ßЧ¡£
ºûµû½Ì³Ì»¹ÌØÊâÇ¿µ÷ʵս¼¼ÇÉ¡£ÀýÈ磬ÔõÑùÓõݹ鷽·¨±éÀúÕû¸öDOMÊ÷£¬¿ìËÙɸѡÇкÏÌõ¼þµÄ½Úµã£¬ÓÖÈçÔõÑùʹÓÃquerySelectorºÍquerySelectorAll¾ÙÐÐCSSÑ¡ÔñÆ÷Æ¥Å䣬µÖ´ï¿ìËÙ¶¨Î»ÔªËصÄÄ¿µÄ¡£ÕâЩ¼¼ÇÉ´ó´óÌáÉýÁË¿ª·¢Ð§ÂÊ£¬ÈÃÖØ´óµÄDOM²Ù×÷±äµÃ¼òÆÓ×ÔÈ»¡£
ËäÈ»£¬ÕÆÎսڵ㵼º½Ò²Òª×¢ÖØÐÔÄÜÓÅ»¯¡£ÀýÈ磬ÔÚ´ó×Ú½ÚµãÖÐÆµÈÔ±éÀúʱ£¬ºÏÀíʹÓûº´æ¡¢×èÖ¹ÖØ¸´²Ù×÷ÊÇÒªº¦¡£ºûµû½Ì³ÌÓÃÖªÐĵĽ¨Ò鏿ËßÄ㣬ÓÅÒìµÄǰ¶Ë¿ª·¢Õߣ¬²»µ«Ã÷È·ÔõÑù²Ù×÷½Úµã£¬»¹Ã÷È·ÔõÑùÈôúÂëÅܵÿ졢ÅܵÃÎÈ¡£
ÕâÒ»²¿·ÖÄÚÈݾÍÏñÒ»°ÑÂòÍ¨ÍøÒ³ÄÚ²¿ÃÔ¹¬µÄÔ¿³×£¬ÕÆÎÕÁËËü£¬Äã»á·¢Ã÷×öÒ³Ãæ¾Í±äµÃÇáËɶàÁË¡£´ÓÃ÷È·DOM½á¹¹£¬µ½ÏÖʵ²Ù×÷£¬Ã¿¸ö¼¼Çɶ¼¾ÓÉÈ«ÐÄÉè¼Æ£¬ÅäºÏ¸»ºñµÄʵÀý£¬ÎªÄãµÄÍøÒ³¿ª·¢Ìṩ¼áʵµÄ»ù´¡¡£
¡¾ÈÃÎÒÃǽøÈëµÚ¶þ²¿·Ö£¬¸üÉîÈë̽Ë÷DOMµ¼º½µÄ¸ß¼¶¼¼Çɼ°ÊµÕ½Ó¦Óá¿
µ±ÄãÖð²½ÊìϤ»ù´¡µÄDOM½Úµã²Ù×÷ºó£¬ÏÂÒ»²½¾ÍÊÇѧϰÔõÑùʹÓÃÕâЩÊÖÒÕ£¬ÊµÏÖ¸üÖØ´óµÄÍøÒ³½»»¥ºÍ¶¯»Ð§¹û¡£ºûµû½Ì³Ì½«´øÄãÉîÈëÏàʶÔõÑùÔËÓø߼¶µ¼º½¼¼ÇÉ£¬´òÔìÁ÷ͨµÄÓû§ÌåÑé¡£
Ò»¡¢µÝ¹é±éÀúDOMÊ÷£¬Éî¶ÈÍÚ¾òÒ³ÃæÐÅÏ¢µÝ¹éÊÇÒ»ÖÖºÜÊÇǿʢµÄÒªÁ죬Ëü¿ÉÒÔ×ÊÖúÄã±éÀúÕû¸öDOMÊ÷£¬²éÕÒÇкÏÌØ¶¨Ìõ¼þµÄ½Úµã¡£ºÃ±È£¬Äã¿ÉÄÜÐèÒªÔÚһƪÎÄÕÂÖÐÕÒ³öËùÓеÄͼƬÁ´½Ó£¬»òÕßɸѡ³öËùÓдøÓÐÌØ¶¨classµÄÔªËØ¡£Í¨¹ýµÝ¹é£¬¿ÉÒÔ±éÀú×ӽڵ㡢Ëï×ӽڵ㣬²ã²ãÉîÈ룬ºÜÊÇÎÞа¡£
functionfindElementsByClass(node,className){letresults=[];if(node.nodeType===1&&node.classList.contains(className)){results.push(node);}node=node.firstChild;while(node){results=results.concat(findElementsByClass(node,className));node=node.nextSibling;}returnresults;}constelements=findElementsByClass(document.body,'my-target');console.log(elements);
¶þ¡¢Ê¹ÓÃCSSÑ¡ÔñÆ÷£¬¿ìËÙ¶¨Î»½ÚµãÏÖ´úä¯ÀÀÆ÷ÌṩquerySelectorºÍquerySelectorAllÒªÁ죬ÕâЩ¾ÍÏñ¸øÍøÒ³ÅûÉÏÁË¡°¸ßËÙ×·×ÙÆ÷¡±¡£ÄãÖ»Ðèд³öCSSÑ¡ÔñÆ÷£¬ÏµÍ³»á°ïÄãÕÒµ½¶ÔÓ¦µÄÔªËØÜöÝÍ¡£ËüÃDZȹŰåµÄµ¼º½ÊôÐÔ¸ü¾«Á·£¬¸ü¿ìËÙ¡£
constitems=document.querySelectorAll('li.item');items.forEach(item=>{//²Ù×÷ÿ¸öliÔªËØ});
Èý¡¢ÊÂÎñίÍУ¬ÌáÉýÒ³Ãæ½»»¥ÄÜÁ¦ÔÚÖØ´óÒ³ÃæÖУ¬ÎªÃ¿¸öÔªËØ°ó¶¨ÊÂÎñ¼È·±Ëö£¬ÓÖµ¹ÔËÓÚά»¤¡£ÊÂÎñίÍÐʹÓÃDOMµ¼º½£¬½«ÊÂÎñ°ó¶¨µ½¸¸ÔªËØÉÏ£¬Æ¾Ö¤ÊÂÎñÄ¿µÄµÄÊôÐÔ£¬¾öÒéÏêϸµÄ´¦Öóͷ£Âß¼¡£ÕâÒ»¼¼ÇɵÄÒªº¦ÔÚÓÚͨ¹ýevent.target¾«×¼¶¨Î»´¥·¢ÊÂÎñµÄ½Úµã¡£
constlist=document.querySelector('#myList');list.addEventListener('click',function(e){if(e.target.tagName==='LI'){alert('Äãµã»÷ÁË£º'+e.target.textContent);}});
ËÄ¡¢²Ù×÷ÊôÐÔºÍÄÚÈÝ£¬¶¯Ì¬ÐÞ¸ÄDOM½á¹¹Í¨¹ýµ¼º½µ½Ìض¨½Úµã£¬ÅäºÏÊôÐÔÐ޸ġ¢Îı¾±ä»»£¬ÊµÏÖÍøÒ³ÄÚÈݵĶ¯Ì¬¸üС£ÀýÈ磬ÕÒµ½Ä³¸öÔªËØ£¬È»ºóÓÃsetAttributeÐÞ¸ÄÊôÐÔ£¬ÓÃtextContent¸Ä±äÎı¾¡£
constbtn=document.querySelector('#changeColorBtn');constbox=document.querySelector('.colorBox');btn.addEventListener('click',()=>{box.setAttribute('style','background-color:yellow;');});
Îå¡¢ÓÅ»¯ÐÔÄÜ£º×èÖ¹²»ÐëÒªµÄÖØÅÅÓëÖØ»æÐÔÄÜÓÅ»¯ÊǸ߼¶Ó¦ÓõÄÒªº¦¡£Í¨¹ý¶ÔDOMµÄµ¼º½²Ù×÷£¬ïÔÌÐ޸ĴÎÊý£¬ºÃ±ÈÅúÁ¿²Ù×÷DOM¡¢»º´æ½ÚµãÒýÓá¢Ê¹ÓÃÎĵµË鯬£¨DocumentFragment£©µÈÒªÁ죬¶¼ÄÜÏÔÖøÌáÉýÒ³ÃæÐÔÄÜ¡£
constfragment=document.createDocumentFragment();for(leti=0;i<10;i++){constli=document.createElement('li');li.textContent='ÌõÄ¿'+i;fragment.appendChild(li);}document.querySelector('#myList').appendChild(fragment);
Áù¡¢Á¬ÏµÊý¾ÝÄ£×Ó£¬¶¯Ì¬ÌìÉúÖØ´ó½á¹¹ÔÚÊý¾ÝÇý¶¯µÄ³¡¾°ÖУ¬ÏÈͨ¹ý¾ç±¾¹¹½¨DOM½Úµã£¬ÔÙʹÓõ¼º½½«Êý¾ÝÌî³äµ½½ÚµãÖС£ÕâÑùÄÜʵÏÖÈçרÊôÄÚÈÝÌìÉú¡¢¶¯Ì¬±í¸ñµÈ¹¦Ð§¡£
ÕÆÎÕÕâЩ¸ß¼¶¼¼ÇÉ£¬Òâζ×ÅÄã²»µ«ÄÜ×ö³ö»ù±¾µÄÒ³Ãæ½á¹¹£¬»¹ÄÜʵÏÖÖØ´ó½»»¥¡¢¶¯»¡¢ÀÁ¼ÓÔØµÈ¸ß¼¶Ð§¹û¡£ºûµû½Ì³ÌÇ¿µ÷ʵ²ÙÑÝÁ·£¬´ÓÔ´ÂëÆÊÎöµ½´úÂëµ÷ÊÔ£¬ÖúÄãÖð²½Äð³ÉDOMµ¼º½µÄ¡°ÀÏ˾»ú¡±¡£
ÏàÐÅËæ×ÅÄãһֱѵÁ·ºÍÓ¦Óã¬DOM½Úµãµ¼º½½«²»ÔÙÉñÃØ£¬¶ø³ÉΪÄã»ÓÈ÷×ÔÈôµÄÉñ±øÀûÆ÷¡£Î´À´µÄÍøÒ³¿ª·¢õè¾¶ÉÏ£¬Äã»áÓÉÓÚÕâЩ¼¼ÇÉ£¬¶ø¸üÓÐµ×Æø£¬Ò²¸üÄÜÏíÊÜ´´Á¢µÄ¿ìÀÖ¡£Õâ²»µ«ÊÇÒ»ÃÅÊÖÒÕ£¬¸üÊÇÒ»³¡Í¨ÏòÍøÒ³Éî´¦µÄÇÉÃîÂó̡£