- 博客(25)
- 收藏
- 关注
原创 DOM 范围折叠要注意的几点
var range = document.createRange(refNode);1. 调用 range.setEndAfter() 或者 range.setEndBefore() 方法,之前没有调用 setStartAfter(),或者 setStartBefore() 方法,程序会报错。2. 调用 setStartAfter(),或者 setStartBefore
2014-07-12 23:20:38 2255 1
原创 全栈JavaScript之路( 二十五 )访问元素的样式
任何支持style 特性的元素在 ,在其DOM 节点 对象中都有一个 style 属性与之对应。 这个style 对象是 CSSStyleDeclaration类型的实例,包含着html style特性的所有样式信息。但不包含 外部样式或者 内嵌样式层叠而来的样式。 在style特性中,提定的任何css属性,都将表现为这个style 对象的属性。对于使用短划线的的属性名,必须转化为驼峰大小
2014-07-11 17:54:01 2164 1
原创 全栈JavaScript之路( 二十四 )DOM2、DOM3, 不涉及XML命名空间的扩展
(一)DocumentType 类型的变化新增三个属性: publicId,systemId,internalSubset(内部子集)<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"[] >通过, document
2014-07-10 16:55:44 1993
原创 全栈JavaScript之路( 二十三 )DOM2、DOM3, 涉及XML命名空间的扩展(一)
Example XHTML page 以上例子展示,通过 xmlns 来指定命名空间,通过 xmlns:prefix 来指定 前缀,一但指定的前缀,就得在当前元素,以及子元素使用。有时候为了避免不同语言间的冲突,也需要使用命名空间来限定特性,如下面的例子所示。Example XHTML pageHello world!
2014-07-10 11:11:52 2131
原创 全栈JavaScript之路( 二十二 )IE 专有扩展——文档模式
ie8 引入了一个新的概念,“文档模式” ,页面的文档模式决定了,可以使用什么功能。也就是说,”文档模式“,决定你了你可以使用哪个级别的css,在javascript可以使用哪些API,以及如何对待文档类型(doctype)。两种方式修改: 通过 meta 标签修改,在服务器端修改, res.setHeader("X-UA-Complatible","EmulateIE
2014-07-09 22:16:15 1460
原创 全栈JavaScript之路( 二十一)HTML5 scrollIntoView方法
HTML5中,scrollIntoView()可以在所有HTML 元素上调用通过滚动浏览器窗口或某个容器元素,调用元素就可以出现在视口中。如果给这个方法传入true 作为参数,或者不传入任何参数,那么窗口滚动之后会让调用元素的顶部与视窗顶部尽可能平齐。如果传入false 作为参数,调用元素会尽可能全部出现在视口中,(可能的话,调用元素的底部会与视窗顶部平齐。)不过顶
2014-07-09 20:15:30 4981
原创 全栈JavaScript之路( 二十 )HTML5 插入 html标记 ( 二 )insertAdjacentHTML
insertAdjacentHTML(), 这个方法也是在IE中最早出现的,现在已纳入html5规范,它接受两个参数,一个是下列的标记之一,一个是要写入的 html 代码文本。beforebegin , (英文为开始之前的意思)在当前元素之前插入一个新的紧邻的同辈元素afterbegin,(英文为开始之后的意思)在当前元素之下插入一个子元素,或者是在当前元素的第一个子元素之前插入一个
2014-07-09 19:57:37 1826
原创 全栈JavaScript之路(十九)HTML5 插入 html标记 ( 一 )innerHTML 与outerHTML
在需要给文档插入大量的html 标记下,通过DOM操作很麻烦,你不仅要创建一系列的节点,而且还要小心地按照顺序把它们接结起来。利用html 标签 插入技术,可以直接插入html代码字符串,简单、高效!以下插入html标签相关的扩展已经纳入html5 规范.1.innerHTML 属性2.outerHTML 属性3.insertAdjacentHTML 方法
2014-07-09 15:20:49 3449
原创 全栈JavaScript之路(十八)HTML5 自定义数据属性
HTML5 规范规定,用户可以为元素 自定义非标准属性, 但是要添加 data- 前缀。目的是为元素提供与页面渲染无关的信息、或者语义信息。这些属性名可以随意添加,只要带上前缀 data- 开头就可以。添加属性这后可以通过 dataset 访问自定义属性,dataset 属性 是DOMStringMap 类型的实例, 也是一个 key : value 的键值对。注
2014-07-08 19:44:28 1536
原创 全栈JavaScript之路(十七)HTML5 新增字符集属性
HTML5 增加了几个文档字符集属性。document.charset : 表示文档的实际使用的字符集。document.defaultCharset: 表示默认的字符集,跟浏览器以及操作系统设置有关。如果文档没有使用默认字符集,那么 document.charset 与 document.defaultCharset 可能不同。设置文档字符集: 但可以通过元素、响
2014-07-08 15:50:58 1717
原创 全栈JavaScript之路(十六)HTML5 HTMLDocument 类型的变化
HTML5 扩展了 HTMLDocument, 增加了新的功能。1.document.readState = 'loading' || 'complete' //支持readyState 属性的浏览器有IE4+、Firefox 3.6+、Safari、Chrome 和Opera 9+。2.document.compatMode = 'CSS1Compat' || 'Bac
2014-07-08 09:58:33 1731
原创 全栈JavaScript之路(十五)HTML5 focus 扩展 (焦点扩展)
HTML5 添加了辅助管理 focus 的功能, 文档获得焦点的途径有; 页面加载,用户输入(一般是按tab键),和 在代码中调用focus()函数. HTML5新增的辅助管理焦点的属性与方法有: document.activeElement 属性, 这个属性指向获得焦点的元素,文档加载期间 值为null, 文档加载完成,保存得是 docume
2014-07-08 09:41:05 2082
原创 全栈JavaScript之路(十四)HTML5 中与class属性相关的扩充
1. getElementByClass() :支持getElementsByClassName()方法的浏览器有IE 9+、Firefox 3+、Safari 3.1+、Chrome 和 Opera 9.5+。2. classList 属性 : classList 属性是新集合类型 DOMTokenList 的实例.DOMTokenList 类型有一个lenght 属性 ,表示包
2014-07-07 23:46:55 1420
原创 全栈JavaScript之路(十三)了解 ElementTraversal 规范
支持Element Traversal 规范的浏览器有IE 9+、Firefox 3.5+、Safari 4+、Chrome 和Opera 10+。对于元素间的空格,在IE9之前,都不会返回文档节点,其它的所有浏览器都会返回文档节点。为了兼容浏览器这间的差异,又不更改已有的DOM 标准,所以有了 Element Traversal 规范。这个规范为 元素增加了 5 个
2014-07-07 15:46:27 2174
原创 学习 OAuth2.0 笔记( 一 )
1.1. Roles 角色 OAuth defines four roles: OAuth 设定了四个角色 resource owner 资源拥有者 An entity capable of granting access to a protected resource. When the resource owner
2014-07-07 11:07:10 1670
原创 全栈JavaScript之路(十二)了解 Selector API
2008 年之前,浏览器中几乎所有的DOM扩展都是专有的。此后,W3C 着手将一些已经成为事实标准的专有扩展标准化并写入规范当中。Selector API level 1 的核心是两个方法: querySelector(), querySelectorAll() .在兼容浏览器中可以通过Docuemnt 类型节点,或者Element类型节点调用。目前已完全支持Selectors API
2014-07-06 15:59:17 2876
原创 每一个程序员必须掌握的知识,字符集与字符编码.
基础知识计算机中储存的信息都是用二进制数表示的;而我们在屏幕上看到的英文、汉字等字符是二进制数转换之后的结果。通俗的说,按照何种规则将字符存储在计算机中,如'a'用什么表示,称为"编码";反之,将存储在计算机中的二进制数解析显示出来,称为"解码",如同密码学中的加密和解密。在解码过程中,如果使用了错误的解码规则,则导致'a'解析成'b'或者乱码。字符集(Charset):是一个系统
2014-07-05 17:43:04 1878
转载 关于base64编码的原理及实现
我们的图片大部分都是可以转换成base64编码的data:image。 这个在将canvas保存为img的时候尤其有用。虽然除ie外,大部分现代浏览器都已经支持原生的基于base64的encode和decode,例如btoa和atob。(将canvas画布保存成img并强制改变mimetype进行下载,会在下一篇记录)但是处于好奇心,还是驱使我去了解下base64编码的原理。以便也在不支持
2014-07-05 17:27:51 850
原创 理解 process.initgroups(user, extra_group)
这个函数是对 linux C函数 initgroups() 的包装 node.js 官方文档很含糊,还是看 linux C函数文档的解释!很清楚明白。The initgroups() function uses the getgrouplist(3) function to calculate the supplementary group IDs for the use
2014-07-04 22:59:35 1858
原创 全栈JavaScript之路(六)学习 文本节点;
文本节点 的类型为 Text , 其构造器函数为: function Text(){[native code]}
2014-07-01 10:51:05 1344
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人