---恢复内容开始---

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>DOM2 && DOM3 || HTML5DOMAPI</title>
</head>
<body>
<div>
<p>12312</p>
<ul>
<li>1</li>
<li>11</li>
<li>111</li>
<li>1111</li>
</ul>
</div>
<script>
root = document.querySelector('div');
//带命名空间的文档结构
/*
<xhtml:body xhtml:class="xx">
</xhtml:body>
*/
root.localName //不带XML空间前缀的tagName
document.doctype.publicId
//"-//W3C//DTD XHTML 1.0 Transitional//EN"
document.doctype.systemId
//"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" document.importNode; //解决不同DOM类型之间的DOM&node移动操作
document.defaultView //window 当前的window环境
//document.contentDocument /*for标准*/|| document.contentWindow.document /*for IE*/
document.styleSheets
document.scripts /* style */
style = {
cssText : '', //样式
length : '', //有几个样式
getPropertCssValue : '',
getPropertyValue : '',
"item(index)" : '', //返回第索引个的样式
removeProperty : '',
setProperty : ''
}; //HTML5元素遍历 //NodeIterator ,treeWalker
var iterator = document.createTreeWalker(root,NodeFilter.SHOW_ELEMENT,filter,false);
function filter( node ){ //有点想 ARRAY.prototype.sort方法
return node.tagName.toLowerCase() === 'li' ?
NodeFilter.FILTER_ACCEPT : //接受这个节点
NodeFilter.FILTER_SKIP //过滤掉这个节点
};
node = iterator.nextNode(); //专有方法 nextNode() 和previousNode() ,取得节点的元素
while( node != null){
console.log(node.tagName);
node = iterator.nextNode();
};
//获取range方法,
var range = document.createRange();
range.selectNode(root);
console.log( range );
//range.setStart(obj,offset)
//range.setEnd(obj,offset)
//range.extraContent;
//range.cloneContent;
//range.insertNode;
//range.surrandContent(span);
//range.collapse( true or false );
//range.compareBoundaryPoints(0 || 1 || 2 || 3,range2);
root.classList;
root.classList.contain;
root.classList.add;
root.classList.remove;
root.classList.toggle; document.activeElement; //默认body
/*
data-xx ; dataSet.xx = 1; 存数据的,实现更快访问
*/; //[
//beforebegin,
//afterbegin,
//beforeend,
//afterend
//]
root.insertAdjacentElement
root.insertAdjacentText
root.insertAdjacentHTML
root.insertAdjacentBefore //HTML5 scrollAPI
document.body.scrollIntoView() document.domain //可以实现同一个域名不同二级域名的跨域,但是只能document.domain更改一次,否则会报错
root.nodeType === '3' ? root.normalize()&&root.splitText('aaa/*这个是切割标志符*/') : ''
document.createComment('\'xxx');
var aDiv = document.getElementsByTagName('div'); //这个aDiv是根据页面自动更新的
</script>
</body>
</html>

//娃哈哈,博客园的恢复功能不错

---恢复内容结束---

读JS高级API笔记_(DOM&&DOM2&&DOM3)哎呀——园龄才9个月啊的更多相关文章

  1. js高级程序设计笔记之-addEventListener()与removeEventListener(),事件解除与绑定

    js高级程序设计笔记之-addEventListener()与removeEventListener(),事件解除与绑定 addEventListener()与removeEventListener( ...

  2. 读JS高级——第五章-引用类型 _记录

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. js高级程序设计 笔记 --- DOM

    DOM是针对HTML和XML文档的一个API.DOM描绘了一个层次化的节点树,允许开发人员添加.移除和修改页面的某一部分. 1,节点层次 DOM可以将任何HTML或XML文档描绘成一个由多层节点构成的 ...

  4. 读书笔记 - js高级程序设计 - 第十章 DOM

      文档元素 是文档的最外层元素,在Html页面中,文档元素始终都是<html>元素 在xml中,任何元素都可以是文档元素 Node类型 Node.ELEMENT_NODE 元素 Node ...

  5. JS全部API笔记

    我相信对于程序猿都有做笔记的习惯. 我初学到现在也做了不少笔记,以前,总是怕写的文章或者好的内容分享出来就怕被直接copy以后更个名就不再是你的. 但通过博客园,学习到不少东西,人家都不怕什么了,我自 ...

  6. js高级程序设计 笔记 --- 错误处理、json和ajax

    1,错误处理 1,try-catch语句 try{可能导致错误的代码} catch(error) {在错误发生时该怎么处理} error.message是所有浏览器都支持的属性. finally语句是 ...

  7. js高级程序设计 笔记 --- 表单

    一,基础知识 在html中,表单是form元素,而在js中,表单对应的是HTMLFormElement类型,继承自HTMLElement,其独特的属性和方法有(常见): action:接收请求的URL ...

  8. JS高级学习笔记(9) 之 转:前端路由跳转基本原理

    原文链接: 前端路由跳转基本原理 前述 前端三大框架Angular.React和Vue都推行单页面应用SPA开发模式,这是因为在路由切换时,替换DOM Tree中发生修改的DOM部分,来减少原来因为多 ...

  9. JS高级学习笔记(6)- 事件循环

    参考文章:深入理解JS引擎的执行机制        JavaScript 异步.栈.事件循环.任务队列 我的笔记:ES系列之Promise async 和 await Event Loop 前提 js ...

随机推荐

  1. Google Map API 使用总结

    Google Map API (一):显示一个最基本的地图 1 实现一个地图:<head>中引用: <script type="text/javascript" ...

  2. Android SQLite (一) 数据库简介

    大家好,今天来介绍一下SQLite的相关知识,并结合Java实现对SQLite数据库的操作. SQLite是D.Richard Hipp用C语言编写的开源嵌入式数据库引擎.它支持大多数的SQL92标准 ...

  3. python基础随笔

    一: 作用域 对于变量的作用域,只要内存中存在,该变量就可以使用. 二:三元运算 name = 值1 if 条件 else 值2 如果条件为真:result = 值1 如果条件为假:result = ...

  4. Git技巧总结分享

    接触Git有很长一段时间了,从最初的不懂到逐渐熟悉运用,相比于SVN,更热衷于Git这一款强大的版本控制工具. 废话不多说,下面对Git做了一些技巧总结,在此分享下,希望能帮助到一些喜欢Git的朋友们 ...

  5. javascript中的浅复制和深复制

    //浅复制:实现基本类型的复制没有问题,但是复制的是引用类型的话,则修改child将会修改parent function extend(parent,child){ var child = child ...

  6. c# 调用打印机

    1.本地打印机 //添加引用并using System.Management; public static void AvailablePrinters() { ManagementScope ms ...

  7. Ubuntu优化-py用机器

    关闭防火墙 ufw disable pip换源 yum install python-pip -y mkdir ~/.pip cat > pip.conf<<a [global] i ...

  8. Unity 协程Coroutine综合测试

    using UnityEngine; using System.Collections; using System.Text; public class rotCube : MonoBehaviour ...

  9. libevent+bufferevent总结

    libevent+bufferevent总结 1 学习参考网址 libevent学习网址:http://blog.csdn.net/feitianxuxue/article/details/93725 ...

  10. mvc control 请求两次问题

    今天在做项目时,突然发现一个mvc 的control中action被执行了两次,最终发现是由于favicon.ico导致的.问题代码: <link rel="shortcut icon ...