Javascript教程:动态样式加载的Javascript代码分析
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""><html xmlns="">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>js动态样式加载</title>
<script type="text/javascript">
function load(){
var style = document.createElement("style");
style.type = "text/css";
style.appendChild(document.createTextNode("body{bacground-color:red;}"));
var head = document.getElementsByTagName("head")[0];
head.appendChild(style);
}
</script>
</head>
<!--<script type="text/javascript">
//第一种
function loadStyle(url){
var link = document.createElement("link");
link.rel = "stylesheet";
link.type = "text/css"
link.href = url;
var head = document.getElementsByTagName("head")[0];//重要的是名字写清楚
head.appendChild(link);
}
loadStyle('styles.css');
</script>-->
<body>
<script type="text/javascript">
//第二种 不兼容ie
//var style = document.createElement("style");
//style.type = "text/css";
//style.appendChild(document.createTextNode("body{background-color:blue;}"));
//var head = document.getElementsByTagName("head")[0];
//head.appendChild(style);
////////////////////////////////////////////////////
//第三种
function loadStyleString(css){
var style = document.createElement("style");
style.type = "text/css";
try{
style.appendChild(document.createTextNode(css));
} catch(ex){
style.styleSheet.cssText = css;
}
var head = document.getElementsByTagName("head")[0];//getElementsByTagName
head.appendChild(style);
}
loadStyleString("body{background-color:red;}");
</script>
</body>
</html>