读JS高级API笔记_(DOM&&DOM2&&DOM3)哎呀——园龄才9个月啊

时间:2022-10-29 11:56:52

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

<!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&lpar;&rpar;与removeEventListener&lpar;&rpar;&comma;事件解除与绑定

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

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

    <!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. Golden Gate 概念和机制

    1. OGG有哪些进程 ü  Manger : manger进程是goldengate的控制进程,分别运行在源端和目标端上,它主要的作用是启动.监控.重启goldengate的其他进程,报告错误及事件 ...

  2. Unity 3D 关于给APK包加广告的流程

    http://hunterwang.diandian.com/post/2012-11-23/40042217286 最近一直纠结着用Unity给安卓的应用添加广告,用Unity3d做安卓我还是第一次 ...

  3. 建模算法(一)&mdash&semi;&mdash&semi;线性规划

    一.解决问题 主要是安排现有资源(一定),取得最好的效益的问题解决,而且约束条件都是线性的. 二.数学模型 1.一般数学模型 2.MATLAB数学模型 其中c,x都是列向量,A,Aeq是一个合适的矩阵 ...

  4. ajax创建对象

    <script>     function createAjax(){         var request=false;                   //window对象中有X ...

  5. hdu1059&lpar;多重背包&rpar;

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1059 题意 : 按顺序读入一些列数,所对应的序列代表价值,数值代表个数(如a[5]=6 ,代表价值为五 ...

  6. 使用jQuery的一些建议

    1.尽可能使用id选择器而不是类选择器 例如: //html <p id="chooseId">测试文本</p> //jQuery console.time ...

  7. 利用JS模拟排队系统

    我爱撸码,撸码使我感到快乐!大家好,我是Counter.今天给大家分享的是js模拟排队系统,刚开始有排队序列,序列里有vip用户和普通用户,vip用户永远位于普通用户的前面,只有当当前vip用户都办理 ...

  8. java排序 冒泡&quest;&plus;插入排序

    冒泡.public class insortSort { public static void main(String[] args) { int[] arr = {12, 3, 4, 55, 36, ...

  9. iOS----------The app&&num;39&semi;s Info&period;plist must contain an NSPhotoLibraryUsageDescription key

    This app has crashed because it attempted to access privacy-sensitive data without a usage descripti ...

  10. PYTHON-网络通信 TCP

    网络编程: 学习网络编程 为什么?目的: 服务端特点: 网络通讯(通信) 什么是网络通讯? 为什么?目的:网络建立的目的是为数据交互(通信) 如何实现通讯(通信)? 互联网协议 互联网=物理连接介质+ ...