john-book
  • 测试
    • vue单元测试
  • 介绍
  • 设计模式
    • 单例模式
  • 个人收藏
    • 房价未来趋势
  • TodoList
  • TaskList
  • 前端架构设计
  • 时间管理
    • 2019前端自检与思考
  • 前端技术点
    • 异步编程和同步编程
    • 继承实现的几种方式
    • Http请求
    • 前端CI/CD持续集成持续交付
    • Promise
    • 其他工具
    • iphonex以及适配
    • 前端骨架屏方案
    • nginx
      • nginx配置upstream负载均衡
      • nginx配置gzip压缩
      • nginx转发配置
    • ajax
    • Dom&BOM
    • flexible
    • jsonp
    • 跨域
    • nunjucks
    • 水平垂直居中
    • 原型和原型链
    • 本地存储方式
    • 无头浏览器
    • chrome插件开发
    • webpack
      • DllPlugin
      • webpack升级
    • 宏任务微任务
    • 页面加载流程
    • http请求流程
    • 图形绘制技术
    • 节流和防抖
    • webpack单页面改多页面
    • redis安装使用
    • git
      • gitignore的使用
  • 算法
  • 前端资料
    • 开源技术库
    • 资料&文档
      • 信息流页面闪开总结
    • 每日收藏
  • 工具
    • UML图
    • Markdown
    • 测试工具
    • 产品工具
  • 站点博客
    • 站点集锦
  • 框架&库
    • React
    • Vue
    • vue3.0
  • 性能优化
    • 性能优化原则和方法
    • Http协议
      • Http Request Header
      • Http Response Header
  • LowCode
    • landingpage
    • landingpage自动化部署
    • landingpage相关
  • 加密
  • 腾讯云服务器
  • 微信公众号开发
  • 微信小程序
    • 小程序埋点统计
    • app分享小程序绑定
  • 数据库
    • 数据库实时抽取
  • 效率
    • 快速生成层级结构图
    • vscode插件vue模版
    • vscode文件头部注释插件
    • 快速生成项目目录结构树
    • vscode格式化配置
    • 前端组件化
  • 前端工作
  • 可视化
    • 页面可视化搭建
  • 前端规范
    • Javascript规范
    • git提交规范
    • eslint三大通用规范
Powered by GitBook
On this page
  • javascript的组成:
  • BOM&DOM关键点
  • 节点类型:
  • 节点三大属性:
  • DOM常见操作
  • 获取节点
  • DOM事件
  • 移动端触摸事件
  • 页面加载流程:
  • defer和async的区别:

Was this helpful?

  1. 前端技术点

Dom&BOM

PreviousajaxNextflexible

Last updated 6 years ago

Was this helpful?

javascript的组成:

1.核心(ECMAScript):描述了js的基本组成和语法

2.文档对象模型(DOM): 处理网页对象的方法和接口

3.浏览器对象模型(BOM):处理浏览器对象的方法和接口

BOM&DOM关键点

DOM根节点: 浏览器(window),node(global);

window对象属性:document,location,navigator,history,screen,frames;

doucument子节点:forms,location,images,links

节点类型:

DOM规定文档中的每个成分都是节点(node),HTML是由节点组成的集合

1.元素节点

2.内容节点

3.属性节点

节点三大属性:

1.nodeName:

 元素节点:元素名称

 属性节点:属性名称

 文本节点:文本\#text的字符串

2.nodeType:

元素节点:1

属性节点:2

文本节点:3

3.nodeValue:

元素节点:null

属性节点:属性值

文本节点:文本内容

DOM常见操作

fisrtChild 第一个子节点

lastChild 最后一个子节点

childNodes 子节点列表

parentNode 父节点

previousSibling 相邻前一个节点

nextSibling 相邻后一个节点

hasChildNodes() 是否有子节点

attributes Element 节点的属性

appendChild(node) 添加子节点

removeChild(node) 移除子节点

replaceChild(newnode,oldnode) 替换子节点

insertBefore(newnode,refnode) 插入节点

innerText

innerHTML

outerText

outerHTML

获取节点

document.getElementById('id')

document.getElementsByName('li')

document.getElementsByTagName('p');

DOM事件

冒泡型事件和捕获型事件

冒泡型事件:从特定到不特定,即从里到外冒泡;

捕获型事件:从不特定到特定元素,即从外到内一层层捕获;

事件处理(监听)函数:addEventListener,removeEventListner,IE为attachEvent,detachEvent

鼠标事件:click,dbclick,mousedown,mouseup, mouseover,mouseout,mousemove ,tap(手机)

键盘事件:keydown,keypress,keyup 按顺序依次触发

HTML事件:load,unload,abort,error,select,change,submit,reset,resize,scroll,focus,blur

DOM 0级处理程序,例如div标签的onclick,或者js中的onclick监控事件

DOM 2级处理程序:addEventListener这种事件监听函数

innerHeight 返回窗口的文档显示区的高度

innerWidth 返回窗口的文档显示区的宽度

outerHeight 返回窗口的外部高度

outerWidth 返回窗口的外部宽度

pageXOffset 设置或返回当前页面相对于窗口显示区左上角的X位置

pageYOffset 设置或返回当前页面相对于窗口显示区左上角的Y位置

element.offsetHeight 返回元素的高度

element.offsetWidth 返回元素的宽度

element.offsetLeft 返回元素的水平偏移位置

element.offsetTop 返回元素的垂直偏移位置

element.offsetParent 返回元素的偏移容器

element.scrollHeight 返回元素的整体高度

element.scrollLeft 返回元素左边缘与视图之间的距离

element.scrollTop 返回元素上边缘与视图之间的距离

element.scrollWidth 返回元素的整体宽度

移动端触摸事件

ontouchstart

ontouchmove

ontouchend

ontouchcancel

页面加载流程:

defer和async的区别: