标签:
1. 呈现模式
document.compatMode == "CSS1Compat"; 标准模式
document.compatMode == "BackCompat"; 混合模式
if(document.compatMode == "CSS1Compat"){
return "SATAND";
}else{
return "Quirks";
}
2. 操作内容
a. innerText
设置和获取文本节点字符串
IE、Safari、Opera、Chrome支持innerText属性
FireFox 支持textContent属性
utils.getInnerText = function(element){
return (typeof element.textContent == "string") ? element.textContent:element.innerText;
}
utils.setInnerText = function(element,text){
if(typeof element.textContent == "string")
element.textContent = text;
else
element.innerText = text;
}
b. innerHTML
设置文本几点字符串是和innerText 一样
通过innerHTML 插入<script> IE支持,但是必须设置 defer特性,但是必须添加作用域元素
div.innerHTML = "_<script defer> alert();</scr"+"ipt>"; // 多出一个_ 文本节点
div.innerHTML = "<input type=\"hidden\"><script defer>alert();</scr" + "ipt>"; // 使用隐藏的<input>字段,而且不影响页面布局。
插入<style>
//Opera Firefox ie
div.innerHTML = "_<style type=\"text/css\">body {background-color:red;}</style>";
div.removeChild(div.firstChild);
//safari chorme
document.getElementsByTagName("head")[0].appendChild(div.firstChild);
Opera Firefox ie 需要一个前置作用域,添加完删除第一个文本节点。
safari chorme 必须将style 元素放到head中,否则会忽略它
不支持innerHTML的元素有
[<col>、<colgroup>、<frameset>、<head>、<html>、<style>、<table>、<tbody>、<thead>、<tfoot>、<title>、<tr>]
标签:
原文地址:http://www.cnblogs.com/lcw5945/p/4204118.html