JavaScript基础——HTML DOM (文档对象模型)

简介: JavaScript基础——HTML DOM (文档对象模型)

DOM文档对象模型

文档  --文档表示的就是整个HTML网页文档


对象  --对象表示将页面中的每一部分都转换为了一个对象


模型  --使用模型来表示对象之间的关系,这样方便我们来获取对象


HTML DOM 模型被构造为对象的树:

image.png



节点

image.png




如何查找 HTML 元素

document节点找到元素

document.getElementById();      //通过元素id找到一个HTML元素节点对象
document.getElementsByTagName();   //通过元素标签名找到一组HTML元素节点对象
document.getElementsByNama();    //通过name属性找到一组HTML元素节点对象

DOM查询

//document中有一个body属性 ,他保存的是bady的引用
//document.documentElement保存的是html根标签
//document.all代表页面中的所有元素
var body =document.body;
var html =document.documentElement
var all = document.all;
document.getElementsByClassName("");

DOM添加

document.getElementById()   // 获取某document中的子节点
document.createTextNode()   // 创建新节点中的文本
document.createElement()       //创建新节点
父节点.appendChild(li);  //添加子节点
子节点.parentNode()    //获取父元素
父节点.removeChild ()        //删除节点
父节点.replaceChild     //替换子节点

事件

事件就是文档或浏览器窗口中发生的一些特定的交互瞬间


Javascript与HTML之间的交互是通过事件实现的。Javascript中常见的事件已在之前的博客中说到


事件对象event


当事件的响应函数被触发时、浏览器每次都会将一个事件对象作为实参传递进响应函数。在事件对象中封装了当前事件相关的一切系信息,比如鼠标的坐标、那个按键被按下、滚轮的移动


<script type="text/javascript">
/*
*键盘控制使div根据不同方向移动
*/
  window.onload = function(){
      document.onkeydown = function(event){
      event=event || window.event;
      console.log(event.keyCode);
      switch(event.keyCode){
          case 37 :
          //alert("向左");
    box1.style.left=box1.offsetLeft -10 +"px";
    break;
    case 39 :
    //alert("向右");
    box1.style.left=box1.offsetLeft +10 +"px";
    break;
    case 38 :
    //alert("向上");
    box1.style.top=box1.offsetTop -10 +"px";
    break;
    case 40 :
    //alert("向下");
    box1.style.top=box1.offsetTop +10 +"px";
    break;
    }
  };
  };
</script>

事件的冒泡(Bubble)


所谓事件的冒泡就是事件的向上传导,当后代元素上的事件被触发时,父代的相同事件也会被触发!


事件的委派


将事件统一绑定给元素共同的祖先元素,这样当后代元素上的事件被触发时,会一直冒泡到祖先元素,从而通过祖先元素的响应函数来处理事件。


事件的委派利用了冒泡,通过委派可以减少事件绑定的次数,提高程序的性能。

相关文章
|
1月前
HTML文档基础标签(2)
HTML文档基础标签(2)
|
3月前
|
XML 移动开发 数据格式
html5为什么只需要写<!doctype html>? 有多少种Doctype文档类型?
html5为什么只需要写<!doctype html>? 有多少种Doctype文档类型?
28 0
|
1月前
|
数据采集 移动开发 前端开发
springboot使用html模版导出pdf文档
springboot使用html模版导出pdf文档
|
1月前
|
移动开发 SEO HTML5
HTML文档基础标签(1)
HTML文档基础标签(1)
|
1月前
|
移动开发 HTML5
HTML5文档头部相关标记
【2月更文挑战第9天】HTML5文档头部相关标记。
13 1
|
2月前
|
JavaScript 前端开发 容器
 JavaScript 遍历文档生成目录结构
 JavaScript 遍历文档生成目录结构
18 1
|
2月前
|
JavaScript 前端开发
HTML DOM 集合(Collection)
HTML DOM 集合(Collection) 是用于表示和操作 HTML 文档的树状结构的数据结构。DOM 代表文档对象模型(Document Object Model),它是 HTML 文档的树状结构表示,允许通过 JavaScript 编程语言来访问和修改 HTML 文档的内容、结构和样式。
34 7
|
3月前
|
JavaScript 前端开发 Java
小笔记:如何使用代码注释:关于JavaScript与TypeScript 注释和文档的自动生成
小笔记:如何使用代码注释:关于JavaScript与TypeScript 注释和文档的自动生成
166 0
|
3月前
|
JSON JavaScript 前端开发
Danfo.js专题 - 附:Dnotebook(Danfo Notebook)单机资源与汉化文档
Danfo.js专题 - 附:Dnotebook(Danfo Notebook)单机资源与汉化文档
48 0
|
4月前
|
存储 JavaScript 前端开发
JavaScript DOM 操作:什么是文档碎片(Document Fragment)?有什么作用?
JavaScript DOM 操作:什么是文档碎片(Document Fragment)?有什么作用?
67 0