JS(Dom对象的属性和方法)第十六课

简介: JS(Dom对象的属性和方法)第十六课

Dom对象的属性和方法

 

自定义的熟悉操作

上面是今天博客要讲述的内容

一个案例回顾上次课讲的内容  下面是Html中的元素布局结构

  <div>我是div审查元素
      <p>我是p标记的元素</p>
      <span>我是span的元素信息</span>
  </div>
  <div class="one">
      <p class="two">我是class选择器</p>
      <p id="three">我是第二个元素</p>
      <p>段落标签</p>
      <from>
          <table>
              <tr>
                  <td>姓名</td>
                  <td><input type="text" name="name" id="" placeholder="请用户输入姓名"></td>
              </tr>
              <tr>
                  <td>密码</td>
                  <td><input type="password" name="password" id="" placeholder="请用户输入密码"></td>
              </tr>
          </table>
      </from>
  </div>
  <div class="two">
      <p class="two">我是第三个节点</p>
      <p id="two">我是第二个元素</p>
      <p>
      <ul id="tabelList">
          <li>我是标签li</li>
          <li>我是标签精准定位获取的元素信息</li>
          <li>我是标签li</li>
          <li>我是标签li</li>
          <li>我是标签li</li>
          <li>我是标签li</li>
          <li>我是标签li</li>
          <li>我是标签li</li>
          <li>我是标签li</li>
          <li>我是标签li</li>
      </ul>
      </p>
  </div>

下面的基本操作是对上次课的节点操作的回顾 注释在文件中 不在过多的介绍

  <script>
      // 文档声明
      var DOCTYPE = document.doctype
      console.log(DOCTYPE)
      // html
      var html = document.documentElement
      console.log(html);
      html.style.background = 'pink'
      // head
      var head = document.head
      console.log(head)
      head.style.background = "yellow"
      // body
      var body = document.body
      console.log(body)
      body.style.background = 'pink'
      // head的子节点
      console.log("获得head的子节点的理解")
      var head = document.head
      console.log(head)
      var one = document.head.children[0]
      console.log(one)
      console.log(document.head.children[1])
      console.log(document.head.children[2])
      console.log(document.head.children[3])
      console.log(document.head.children[4])
      console.log(document.head.children[5])
  </script>

// 兄弟节点 
      // document.head.nextElementSibling 获取head的后一个节点元素为body
      console.log(document.head.nextElementSibling)
      // document.body.previousElementSibling 获取body的前兄弟节点是 head
      console.log(document.body.previousElementSibling)
      // 父节点
      console.log("获取父元素的节点")
      console.log(document.head.parentNode)
      console.log(document.body.parentNode)
      // 总结 获取document.head.parentNode)和document.body.parentNode 总节点为Html
      // console.log(document.html.parentNode) 报错
      console.log("____________________________________________________________________________________________")
      console.log("获取元素的父节点")
      console.log(document.body.parentElement)
      console.log(document.head.parentElement)
      // 总结 获取document.head.parentElement)和document.body.parentElement总节点为Html

 // document.head.nextElementSibling 获取head的后一个节点元素为body
      console.log(document.head.nextElementSibling)
      // document.body.previousElementSibling 获取body的前兄弟节点是 head
      console.log(document.body.previousElementSibling)
      var two = document.body.children[0]
      console.log(two)
      console.log(document.body.children[1])
      console.log(document.body.children[2])
      console.log(document.body.children[3])
      // 第一个
      console.log(document.body.firstChild)
      console.log(document.body.lastChild)
      console.log("操作Dom对象的属性和方法")

一个基础案例 带你了解 Dom对象的属性和方法

 <div class="box">盒子1</div>
 <div class="box">盒子2</div>
 <div id="nav">
     <ul>
         <li>首页</li>
         <li>产品</li>
         <li class="nav_li">项目名称</li>
     </ul>
 </div>

带你了解 Dom对象的属性和方法

  // 1. getElementsByClassName 根据类名获得某些元素集合
  var boxs = document.getElementsByClassName('box');
  console.log(boxs);
  var nav_li=document.getElementsByClassName('nav_li')
  console.log(nav_li)
  // 2. querySelector 返回指定选择器的第一个元素对象  切记 里面的选择器需要加符号 .box  #nav
  var firstBox = document.querySelector('.box');
  console.log(firstBox);
  var nav = document.querySelector('#nav');
  console.log(nav);
  var li = document.querySelector('li');
  console.log(li);
  // 3. querySelectorAll()返回指定选择器的所有元素对象集合
  var allBox = document.querySelectorAll('.box');
  console.log(allBox);
  var lis = document.querySelectorAll('li');
  console.log(lis);

在上面的6个方法中最常用的是上面的两个方法

// 5.querySelector() — 精准的获取某个元素
var e = document.querySelector("#tabelList li:nth-child(2)")
console.log(e)

// 6.querySelectorAll()获取符合类名或者标签名等条件的的所有元素
var f = document.querySelectorAll('div')
console.log(f)

自定义属性操作 语法如下

自定义的熟悉操作

自定义属性操作 运行效果如上所示

 <div age="12" ac="" wer class="box" id="div1"></div>

 var div1 = document.querySelector("#div1") //通过document.querySelector("#div1") 获取div1盒子
 var flag = div1.hasAttribute("age")       //判断属性是否存在
 var attr = div1.getAttribute("age")  //获取属性的值
 var srt = div1.setAttribute("name", "tyu")  //设置属性值
 var ligt = div1.getAttribute("name")  //删除属性值没有返回值
 // var liko = div1.removeAttribute("ligt") //获取所有的属性的内容
 console.log(div1)
 console.log(ligt) 
  console.log(liko)
 var attrs=div1.attributes  //获取所有的属性
 console.log(attrs)
 for(var item of attrs){
     console.log(item)
 }
 // console.log(flag)

相关文章
|
1月前
|
JavaScript 前端开发 程序员
前端原生Js批量修改页面元素属性的2个方法
原生 Js 的 getElementsByClassName 和 querySelectorAll 都能获取批量的页面元素,但是它们之间有些细微的差别,稍不注意,就很容易弄错!
|
1月前
|
监控 JavaScript Java
Node.js中内存泄漏的检测方法
检测内存泄漏需要综合运用多种方法,并结合实际的应用场景和代码特点进行分析。及时发现和解决内存泄漏问题,可以提高应用的稳定性和性能,避免潜在的风险和故障。同时,不断学习和掌握内存管理的知识,也是有效预防内存泄漏的重要途径。
134 52
|
1月前
|
JSON 前端开发 JavaScript
JavaScript中对象的数据拷贝
本文介绍了JavaScript中对象数据拷贝的问题及解决方案。作者首先解释了对象赋值时地址共享导致的值同步变化现象,随后提供了五种解决方法:手动复制、`Object.assign`、扩展运算符、`JSON.stringify`与`JSON.parse`组合以及自定义深拷贝函数。每种方法都有其适用场景和局限性,文章最后鼓励读者关注作者以获取更多前端知识分享。
23 1
JavaScript中对象的数据拷贝
|
1月前
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
49 5
|
1月前
|
JavaScript 前端开发
js中的bind,call,apply方法的区别以及用法
JavaScript中,`bind`、`call`和`apply`均可改变函数的`this`指向并传递参数。其中,`bind`返回一个新函数,不立即执行;`call`和`apply`则立即执行,且`apply`的参数以数组形式传递。三者在改变`this`指向及传参上功能相似,但在执行时机和参数传递方式上有所区别。
28 1
|
5月前
|
存储 JavaScript 前端开发
|
JavaScript
js基础笔记学习247event对象3
js基础笔记学习247event对象3
77 0
js基础笔记学习247event对象3
|
JavaScript
js基础笔记学习309筛选jquery对象1
js基础笔记学习309筛选jquery对象1
67 0
js基础笔记学习309筛选jquery对象1
|
JavaScript
js基础笔记学习245event对象1
js基础笔记学习245event对象1
47 0
js基础笔记学习245event对象1
|
JavaScript
js基础笔记学习246event对象2
js基础笔记学习246event对象2
61 0
js基础笔记学习246event对象2