DOM2级样式

一、常用方法

1.确定文档的归属窗口:

varparentWindow=document.defaultView||document.parentWindow//IE

2.用于确定当前节点具有什么能力(建议使用能力检测)

Document.body.isSupported();

Document.implementation.hasFeature();

接收两个参数:特性名和版本号

3.DOM3级引入两个辅助比较节点的方法(返回值为布尔值)

 isSameNode():判断节点是否相同,两个是否引用同一个对象

 isEqualNode():判断节点是否相等,两个是否具有相同的类型和相同的属性。

4.框架和内嵌框架分别用HTMLFrameElement和HTMLIFrameElement表示:

 属性contentDocument指向表示框架内容的文档对象。

 IE8以前支持:contentWindow属性。

 兼容写法:

var iframe=document.getElementById(‘myIframe’);

   var  iframeDoc=iframe.contentDocument||iframe.contentWindow.document

 

二、样式

1.判断浏览器是否支持DOM2级定义的CSS能力

var  a=document.implementation.hasFeature(‘CSS’,’2.0’);

var  b=document.implementation.hasFeature(‘CSS2’,’2.0’);

2.访问元素的样式

 (1)obj.style.属性名(注意驼峰式写法)。

 (2)特殊的属性:float  非IE:cssFloat ,IE:styleFloat

 3. style对象的属性与方法

 cssText : 访问style特性中的css 代码  读取模式和写入模式

 length : css属性数量

 item(index): 返回指定位置的css属性名称

 getPropertyValue(propertyName): 返回属性值

 removeProperty(属性名): 从样式中删除属性

 setProperty(propertyName,value,priority): 将给定属性设置为相应的值,并加上优先权标志(’important’或一个空字符串)。

 4.计算的样式(所有样式都是只读的,不能修改其属性)

  非IE:document.defaultView.getComputedStyle(obj,null).属性名;

  IE: obj.currentStyle.propertyName.propertyName;

5.操作样式表

  (1).判断浏览器是否支持DOM2级样式表

     document.implementation.hasFeature(‘StyleSheets’,’2.0’);

 (2) CSSStyleSheet常用属性:

    disabled: 表示样式表是否被禁用的布尔值

    href: 中的URL

    type: 表示样式表类型的字符串

    cssRules :样式表中包含样式规则的集合,IE:rules

  (3) 获取样式表

      1. document.styleSheets集合:表示应用于文档的所有样式表.

      2. obj.sheet || obj.styleSheet //obj可以是/