javascript DOM相关语法
childNodes: 获取元素内的所有节点
包括文本节点:nodeType=3 ,
元素节点:nodeType = 1
nodeType:它可以判断所有节点的类型
元素节点类型:1
文本节点:3
注释节点:8
属性节点:2
children:这个属性可以查看父元素下的所有元素节点,不包括其它的节点了
parentNode:元素的父节点
nextElementSibling:元素的下一个相临的节点
previousElementSibling:元素的上一个相临节点
firstElementChild:父元素内的第一个节点
lastElementChild:父元素内的最后一个节点
offsetParent:最近的有定位属性的祖先节点,如果没有定位指向body,注意当前元素也要有定位的,有些浏览器还要给宽高
offsetLeft:(外边框包括border的宽度,内边框是指border的里面的边框)外边框到有定位父级的内边框的距离 ,取到的值不带单位,如果父级都没有定位默认到body的距离,取到最近的有定位的父级的距离
getComputedStyle(div3).left :这个是获取元素的样式的,取到的值是带单位的
tagName:可以取到标签名
getBoundingClientRect():这个方法的返回值是个对象可以拿到关于上下左右的距离,就可以不用offsetLeft这样的方法了
getAttribute:获取元素的行间属性
removeAttribute:删除元素的行间属性
clientWidth:width+padding (不带border)取到的值是元素的width的值,不带border的值, 不支持margin
offsetWidth:取到的值是width+border+padding,不支持margin
document.documentElement.clientWidth:可视区的宽度,是文档窗口的宽度
document.documentElement.clientHeight:可视区的高度,如果把控制台打开的化它去自动去掉控制台的高度
createElement:创建元素
appendChild:放入元素
insertBefore:往前插入节点,
insertBefore(childNode1,childNode2)将第一个参数插入到第二个节点之前
removeChid:删除节点,如果指一的子节点没有则会报错,使用时 父元素.removeChild(要删除的元素)
replaceChild:替换元素的位置,比如:box.replaceChild(div2,div1)将div1替换成div2,注意他们是剪切
元素.cloneNode():克隆,但是它不能将克隆元素的子节点也克隆出来
元素.cloneNode(true):这样就可以将子节点克隆出来了,事件是不会被克隆的
表单操作:
box.tHead.style.borderColor :table.tHead获取tHead元素
classList: class的列表
元素.classList.contains('要找的class名字' ):
元素.classList.add('要添加的class的名字')
元素.classList.remove('要移出的class的名字')
元素.classList.toggle('要判断的class名字'): toggle判断是否有class,如果有就去掉,如果没有就加上
querySelect:可以是 元素.querySelect('标签')
文件夹框选案例:










| 节点类型 | nodeName 返回值 | nodeValue 返回值 | |
|---|---|---|---|
| 1 | Element | 元素名 | null |
| 2 | Attr | 属性名 | 属性值 |
| 3 | Text | #text | 节点内容 |
| 4 | CDATASection | #cdata-section | 节点内容 |
| 5 | Entity 参考手册 | 实体参考名 | null |
| 6 | Entity | 实体名 | null |
| 7 | ProcessingInstruction | target | 节点的内容 |
| 8 | Comment | #comment | 注释文本 |
| 9 | Document | #document | null |
| 10 | DocumentType | doctype name | null |
| 11 | DocumentFragment | #document fragment | null |
| 12 | Notation | 符号名称 | null |
Bom部分:
window.open()打开新窗口


window.open()此方法本身返回一个window
close()关闭窗口,前面是哪个窗口的window就关闭的谁

可以关闭另外一个窗口,前面的指的是哪个窗口就是关闭哪个窗口
window.navigator.userAgent 浏览器用户信息

window.location:浏览器地址信息


兼容各浏览器的写法
内容高:
scrollHeight:比如div里套一个div,父级设高为100,子级设高为200,那么父级的内容高为200

offsetHeight:文档高度




如果这样写是有问题,会出现下面的问题属标和div不在一块

属标的值是相对于可视区的,但是div的值是根据页面算的,所以当你给div的值是属标移动的值时div是与属标之间有段距离的,理想状态应该是属标和div是在一块的,所以还要加上滚动的距离,才是div应该算的值,因为 div是根据页面算的

javascript DOM相关语法的更多相关文章
- JavaScript - DOM相关
DOM节点分类 ( node ) : 元素节点 ( element node ) 属性节点 ( attribute node ) 文本节点 ( text node) DOM的相关操作 : 1. 查询元 ...
- javascript;Dom相关笔记
document.ondblclick 页面双击事件document.title.charAt(0) 取标题第1个字符串window.alert 弹出消息对话框window.confirm 显示确定 ...
- JavaScript的基础语法及DOM元素和事件
一,JavaScript是什么? 1,JavaScript简称:js,是一种浏览器解释型语言,嵌套在HTML文件中交给浏览器解释执行.主要用来实现网页的动态效果,用户交互及前后端的数据传输等. 2,J ...
- Javascript DOM 编程艺术(第二版)读书笔记——基本语法
Javascript DOM 编程艺术(第二版),英Jeremy Keith.加Jeffrey Sambells著,杨涛.王建桥等译,人民邮电出版社. 学到这的时候,我发现一个问题:学习过程中,相当一 ...
- 读书笔记:JavaScript DOM 编程艺术(第二版)
读完还是能学到很多的基础知识,这里记录下,方便回顾与及时查阅. 内容也有自己的一些补充. JavaScript DOM 编程艺术(第二版) 1.JavaScript简史 JavaScript由Nets ...
- javascript DOM操作HTML文档
文档对象模型(DOM)是W3C为解决浏览器混战时代不同浏览器环境之间的差别而制定的模型标准.W3C将文档对象模型定义为:是一个能让程序和脚本动态 访问和更新文档内容.结构和样式的语言平台.提供了标准的 ...
- javascript DOM 操作基础知识小结
经常用到javascript对dom,喜欢这方便的朋友也很多,要想更好的对dom进行操作,这些基础一定要知道的. DOM添加元素,使用节点属性 <!DOCTYPE html PUBLIC ...
- JavaScript DOM 总结
一.DOM基础1.节点(node)层次Document--最顶层的节点,所有的其他节点都是附属于它的.DocumentType--DTD引用(使用<!DOCTYPE>语法)的对象表现形式, ...
- JavaScript DOM动态创建(声明)Object元素
http://www.cnblogs.com/GuominQiu/archive/2011/04/01/2002783.html 一文提及“等整个页面加载完毕后,根据用户所选的阅读机类型,再用Java ...
随机推荐
- 《深入理解Elasticsearch》README
书目 <深入理解ElasticSearch>拉斐尔·酷奇,马雷克·罗戈任斯基[著]张世武,余洪森,商旦[译] 机械工业出版社,2016.1 本系列包括以下8篇笔记 第01章 Elastic ...
- Android性能分析Systrace工具
一.概述 保证系统流畅度,也就是保证系统能连续不间断地提供每秒60帧的运行状态.当出现掉帧时(也可称为Jank),需要知道当前整个系统所处的状态,systrace便是最佳的选择,它能手机检测Andro ...
- 基于JDBC的数据库连接池技术研究与应用
引言 近年来,随着Internet/Intranet建网技术的飞速发展和在世界范围内的迅速普及,计算机 应用程序已从传统的桌面应用转到Web应用.基于B/S(Browser/Server)架构的3层开 ...
- 《FilthyRichClients》读书笔记(一)-SwingのEDT
<FilthyRichClients>读完了前几个章节,现将我的体会结合工作以来从事Swing桌面开发的经验,对本书的一些重要概念进行一次 分析,对书中的一些遗漏与模糊的地方及时补充,同时 ...
- php 将二维数组批量插入到数据库中
$arr = array( array(,'name'=>'ceshi4'), array(,'name'=>'ceshi5'), array(,'name'=>'ceshi6'), ...
- 'System.ValueTuple, Version=0.0.0.0 required for Add-Migration on .NET 4.6.1 Class Library
https://stackoverflow.com/questions/45978173/system-valuetuple-version-0-0-0-0-required-for-add-migr ...
- 【python】@property装饰器
Python内置的@property装饰器可以把类的方法伪装成属性调用的方式.也就是本来是Foo.func()的调用方法,变成Foo.func的方式.在很多场合下,这是一种非常有用的机制. class ...
- jquery页面加载效果
此为有时页面加载很慢时体验效果很不好而写的加载动画 CSS样式: #loading{position:%;left:%;width:124px;height:124px;overflow:hidden ...
- vue的props 属性类似于bug的东西
/* * @Author: shs * @Date: 2019-04-19 17:48:39 * @Last Modified by: shs * @Last Modified time: 2019- ...
- 第一个.NET Core应用,创建.NET Core命令
打开cmd,依次输入mkdir .project(创建目录),cd .\.project(进入目录),dotnet new(新建初始项目),dotnet restore(还原依赖),dotnet ru ...