亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

搜索
博主信息
博文 56
粉絲 1
評論 0
訪問量 76090
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
獲取頁面元素的5種方式
零龍
原創(chuàng)
3880人瀏覽過

獲取頁面元素的5種方式

  • 文檔節(jié)點 : document
  • 節(jié)點類型 :document.nodeType
  • 節(jié)點名稱 :document.nodeName
  • 節(jié)點的值 :document.nodeValue
  • 文檔類型 :document.doctype
  • 更節(jié)點 :document.documentElement
  • 頭元素 :document.head
  • 標題 :document.title
  • 主體 :document.body
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>dom對象</title>
  7. </head>
  8. <body>
  9. <H3>hello php.cn</H3>
  10. <p>大家晚上好</p>
  11. <script>
  12. // 1.節(jié)點是dom中的最小單元
  13. // 2.節(jié)點:元素<h3>,文本節(jié)點<h3>中的文本,注釋節(jié)點,片段節(jié)點<p>,文檔節(jié)點documenet
  14. /
  15. console.log(document);
  16. //節(jié)點類型
  17. console.log(document.nodeType); //9
  18. //節(jié)點名稱
  19. console.log(document.nodeName); //#document
  20. //節(jié)點的值
  21. console.log(document.nodeValue); //null
  22. //查看文檔類型
  23. console.log(document.doctype); // <!DOCTYPE html>
  24. //根節(jié)點<html>
  25. console.log(document.documentElement); //html源碼
  26. //頭元素
  27. console.log(document.head); //獲取head
  28. //標題
  29. console.log(document.title); //獲取title
  30. //主體
  31. console.log(document.body); //獲取body
  32. </script>
  33. </body>
  34. </html>

示例圖:


  • 返回的是一個元素對象的集合 :document.getElementsByTagName
  • 返回具有指定id的第一個元素(唯一) :document.getElementById
  • 指定的id或name元素 :namedItem()
  • 獲取class指定類名的元素集合 :document.getElementsByClassName
  • 獲取滿足條件集合中的第一個元素(類似于id) :document.querySelector
  • 獲取滿足條件的全部元素組成的集合: querySelectorAll
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>如何獲取頁面元素</title>
  7. </head>
  8. <body>
  9. <div id="list">
  10. <ul class="poster">
  11. <li name = "active">世界亞洲中國</li>
  12. <li>您是地球人</li>
  13. <li>我是中國人</li>
  14. </ul>
  15. </div>
  16. <script>
  17. //1.標簽:返回的是一個元素對象的集合
  18. var ul = document.getElementsByTagName("ul");
  19. //getElementsByTagName 獲取元素
  20. console.log(ul);
  21. // console.log(ul[0]);
  22. // console.log(ul.item(0));
  23. //2.id:只返回具有指定id的第一個元素(唯一)
  24. var list = document.getElementById("list");
  25. //getElementById 獲取ID
  26. // console.log(list);
  27. var div =document.getElementsByTagName("div");
  28. console.log(div.namedItem("list")===list);
  29. //namedItem() 指定的id或name元素
  30. var lis = document.getElementsByTagName("li");
  31. console.log(lis);
  32. console.log(lis.namedItem("active"));
  33. var active = document.getElementsByTagName("li").namedItem("active");
  34. active.style.color ="red";
  35. // 在元素級別調用以上的api方法來獲取元素
  36. var lis = ul.item(0).getElementsByTagName("li");
  37. var active=lis.namedItem("active");
  38. console.log(active);
  39. //3.class 返回一個html集合
  40. //獲取class指定類名的元素集合
  41. var poster = document.getElementsByClassName("poster");
  42. console.log(poster);
  43. poster.item(0).style.border = "1px solid";
  44. //4.querySelector(css選擇器):獲取滿足條件集合中的第一個元素(類似于id)
  45. // querySelectorAll(css選擇器):獲取滿足條件的全部元素組成的集合
  46. var div = document.querySelector("#list");
  47. //獲取div,需要加標識符#
  48. var li = document.querySelector("#list li");
  49. var li = document.querySelector("#list li:nth-of-type(2)");
  50. var li = document.querySelector("#list li:last-of-type");
  51. //獲取多個注意:.poster>*
  52. var lis = document.querySelectorAll(".poster > *");
  53. console.log(lis);
  54. </script>
  55. </body>
  56. </html>


  • 獲取元素的子節(jié)點集合 : childNodes
  • 文本節(jié)點 : nodeType = 3 : nodeType = 1 :元素節(jié)點
  • 子節(jié)點集合 :childNodes 格式:節(jié)點.childNodes.item
  • 元素的子元素集合 : children
  • 節(jié)點的第一節(jié)點 : firstChild
  • 元素的第一個子元素 : firstElementChild
  • 元素的最后一個子元素 : lastElementChild
  • 元素集合的第一個元素 :
  • 元素父節(jié)點 : parentNode
  • 當前元素父節(jié)點: parentElement
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>node,nodelist</title>
  7. </head>
  8. <body>
  9. <div id="box">
  10. <h2>Javascript</h2>
  11. <p>通用前端腳本語言</p>
  12. <li>學習讓我感到很充實</li>
  13. </div>
  14. <p><a href="http://ipnx.cn">PHP中文網</a></p>
  15. <script>
  16. var div = document.querySelector("div");
  17. console.log(div.childNodes); //獲取元素的子節(jié)點集合
  18. // nodeType = 3 :文本節(jié)點:返回節(jié)點的節(jié)點類型
  19. console.log(div.childNodes.item(0).nodeType);
  20. // nodeType = 1 :元素節(jié)點
  21. console.log(div.childNodes.item(1).nodeType);
  22. //過濾掉節(jié)點集合中的非元素節(jié)點
  23. for(var i = 0; i < div.childNodes.length; i++)
  24. {
  25. var currentNode = div.childNodes.item(i);
  26. if (currentNode.nodeType == 1)
  27. {
  28. console.log(currentNode.tagName.toLowerCase());
  29. }
  30. }
  31. console.log(div.children); //元素的子元素集合
  32. console.log(div.firstChild); //文檔節(jié)點的第一節(jié)點
  33. console.log(div.firstElementChild); //返回指定元素的第一個子元素
  34. console.log(div.lastElementChild); //返回指定元素的最后一個子元素
  35. console.log(div.children.item(0)); //子元素集合的第一個元素
  36. var li =document.querySelector('li');
  37. console.log(li.parentNode); //元素父節(jié)點
  38. //充當父節(jié)點永遠不可能是文本或屬性,只能是元素或文檔
  39. console.log(li.parentElement); //回的是當前元素父節(jié)點
  40. console.log(li.parentElement === li.parentNode)
  41. </script>
  42. </body>
  43. </html>


  • 創(chuàng)建元素 : createElement
  • 創(chuàng)建文件碎片節(jié)點 : document.createDocumentFragment
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>元素的動態(tài)添加與刪除</title>
  7. </head>
  8. <body>
  9. <ul></ul>
  10. <script>
  11. var h2 = document.createElement('h2');
  12. //createElement 創(chuàng)建元素
  13. h2.innerText = '大家辛苦了';
  14. h2.style.color = 'red';
  15. h2.innerHTML = '大家<span style="color:green">辛苦了</span>';
  16. document.body.appendChild(h2);
  17. //向節(jié)點的子節(jié)點列表的末尾添加新的子節(jié)點。
  18. var ul =document.querySelector('ul');
  19. //為防止每添加一個元素導致頁面DOM樹重新渲染一次
  20. //借助文檔片斷來解決這個問題
  21. //先創(chuàng)建一個臨時文檔片斷
  22. //將生成的10個li添加到內存中的這個文檔片斷節(jié)點中
  23. //將這個文檔片斷一次性添加到頁面,此時頁面只會渲染一次
  24. var frag = document.createDocumentFragment();
  25. for(var i = 0; i< 10; i++)
  26. {
  27. var li =document.createElement('li');
  28. li.innerText = '列表項'+(i + 1);
  29. frag.appendChild(li);
  30. }
  31. ul.appendChild(frag);
  32. </script>
  33. </body>
  34. </html>


  • 添加綁定事件 :addEventListener
  • 取消事件的默認動作:preventDefault
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>事件基礎</title>
  7. </head>
  8. <body>
  9. <button onclick="alert(this.firstChild.nodeValue);">點擊我</button>
  10. <button>點我試試</button>
  11. <a href="http://www.php.com/0814/demo.html">我是超鏈接</a>
  12. </body>
  13. <script>
  14. //獲取第二個按鈕
  15. var but = document.querySelector('button:nth-of-type(2)');
  16. but.addEventListener('click',function(ev){
  17. //添加綁定綁定事件
  18. var h2 = document.createElement("h2");
  19. h2.style = "width:100px;height:50px;background:green;";
  20. but.style = "color:red;width:100px;height:50px;";
  21. },false);
  22. but.addEventListener('mouseout',function(ev){
  23. var h2 = document.createElement("h2");
  24. h2.style = 'none';
  25. document.body.appendChild(h2);
  26. },false);
  27. var link = document.links.item(0);
  28. link.onclick = function(ev)
  29. {
  30. ev.preventDefault();
  31. but.style = 'none';
  32. };
  33. </script>
  34. </html>

批改老師:天蓬老師天蓬老師

批改狀態(tài):合格

老師批語:其實任何一種都可以獲取到元素, 肯定是選擇最簡單的方式
本博文版權歸博主所有,轉載請注明地址!如有侵權、違法,請聯(lián)系admin@php.cn舉報處理!
全部評論 文明上網理性發(fā)言,請遵守新聞評論服務協(xié)議
0條評論
作者最新博文
關于我們 免責申明 意見反饋 講師合作 廣告合作 最新更新
php中文網:公益在線php培訓,幫助PHP學習者快速成長!
關注服務號 技術交流群
PHP中文網訂閱號
每天精選資源文章推送
PHP中文網APP
隨時隨地碎片化學習
PHP中文網抖音號
發(fā)現有趣的

Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號

  • 登錄PHP中文網,和優(yōu)秀的人一起學習!
    全站2000+教程免費學