文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

web前端:DOM解读

敲键小勇士

敲键小勇士

2024-04-23 23:06

关注

  DocumentObjectModel的历史可以追溯至1990年代后期微软与Netscape的"浏览器大战",双方为了在Javascript与JScript一决生死,于是大规模的赋予浏览器强大的功能。微软在网页技术上加入了不少专属事物,既有VBScript、ActiveX、以及微软自家的Dhtml格式等,使不少网页使用非微软平台及浏览器无法正常显示。DOM即是当时蕴酿出来的杰作。

  DOM概念-documentobjectmodel:文档对象模型

  操作文档的一套方法,document是一个对象,是dom的顶级对象,属于window的一个对象,并且可以说是最出色的一个儿子。

  DOM元素的获取:

  document.getElementById("id名字")//根据ID名字来获取标签;

  document.getElementByTagName("标签名")//根据标签名来获取;

  document.getElementByClassName("类名")//根据类名来获取;

  document.getElementByName("name的属性值")//根据name属性来获取;

  document.querySelector(css选择器)//根据CSS选择器来获取;

  document.querySelectorAll(css选择器)//根据CSS选择器来获取所有满足条件的元素;

  //3、5、6在IE中不兼容

  DOM元素的操作:

  内容操作:

  元素.innerText//文本内容操作;

  元素.innerHTML//带标签的内容操作;

  元素.value//表单元素的内容操作(input类型)

  元素.outText//包含自身的标签;

  元素.outHTML//包含自身的标签;

  属性操作:

  元素.getAttribute("属性名")//获取属性的值,只能获取不能修改

  元素.setAttribute("属性名","属性值")//修改属性的值,相当于重新设置

  元素.removeAttribute("属性名")//删除属性

  //也可以直接通过"."来操作元素.属性="";//(通常不在标签上显示)

  类名、样式操作:

  元素.style.css(属性名)="值";//设置样式;

  元素.className="值";//设置class类名;

  元素.className="";//清空class类名;

  DOM节点:

  概念:组成HTML页面的所有内容,都叫做节点;

  组成://(元素、文本、注释、属性等节点)

  元素节点:(主要介绍)

  元素节点的获取:

  元素.children//获取所有的子元素;

  元素.firstElementChild//获取第一个子元素;

  元素.lastElementChild//获取最后一个子元素;

  元素.previousElementSibling//获取上一个兄弟元素;

  元素.nextElementSibling//获取下一个兄弟元素;

  元素.parentElement//获取父元素;

  元素节点的操作:

  vartd=document.createElement('td');//创建标签节点

  插入节点:

  父元素.appendChild(子元素)//在父元素最后追加;

  父元素.insertBefore(新元素,旧元素)//将新的元素插入到指定的子元素前面;

  删除节点:父元素.remove(子元素);

  复制节点:父元素.cloneNode(true);

  //有true就会连标签里面的内容也复制出来,没有true只会复制空标签;

  替换节点:父元素.replaceChild(新元素,旧元素)//使用新的子元素替换掉旧的元素;

  获取元素节点的样式:

  window.getComputedStyle(元素)

  元素.currentStyle(IE兼容)

  封装之后:

  functiongetStyle(ele,attr){

  if(window.getComputedStyle){

  returnwindow.getComputedStyle(ele)[attr]

  }else{

  returnele.currentStyle[attr]

  }

  }

  vardiv=document.getElementsByTagName("div")[0];

  varw=getStyle(div,"width");

  console.log(w);

  获取元素位置:

  元素.offsetLeft元素.offsetTop//这个就是于offsetParent的距离

  元素.offsetParent//获取到定位是参考的那个设置过定位的父元素;

  获取节点:

  元素.childNodes//获取所有子节点;

  元素.parentNode//获取父节点;

  元素.firstChild//获取第一个子节点;

  元素.lastChild//获取最后一个子节点;

  元素.previousSibling//获取上一个兄弟节点;

  元素.nextSibling//获取下一个兄弟节点;

  节点属性:

  节点属性nodeType节点类型元素节点1文本节点3注释节点8

  nodeName节点名称​元素节点大写的标签名​文本节点#text​注释节点#comment

  nodeValue节点的值​元素节点null​文本节点文本内容​注释节点注释的内容

  获取/设置滚动过的距离

  有文档声明的时候​document.documentElement.scrollTop​document.documentElement.scrollLeft​没有文档声明的时候​document.body.scrollTop​document.body.scrollLeft

  //做一个回到顶部的效果

  获取浏览器大小

  document.documentElement.clientWidth​document.documentElement.clientHeight​//不包含滚动条的尺寸

  获取html基本结构

  document.documentElement是html标签​document.bodybody标签​document.headhead标签​document.titletitle标签

  文档对象模型(DocumentObjectModel,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口。在网页上,组织页面(或文档)的对象被组织在一个树形结构中,用来表示文档中对象的标准模型就称为DOM。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯