document.styleSheets代表了文档中单一的样式表。
document.styleSheets可以返回由网页中所用到的样式表组成的数组,但是不包括直接嵌在元素里的style。
例如:
![styleSheets以及js中实现样式表的切换、样式的增加减少 - 潜流 - pig在学习思考了](http://img5.ph.126.net/m3mlLtHF0GtVlxzh6ANaHQ==/3090313769323323785.jpg)
上面代码弹出的对话框显示2。至于样式表在数组里的顺序由定义时的顺序决定,如上document.styleSheets[0]返回设定字体大小的style,document.styleSheets[1]返回样式表firstCSS.css。
js可以控制样式表的切换,用到的是disabled属性,如上,若要屏蔽掉样式表firstCSS.css,可以加入下面语句:
![styleSheets以及js中实现样式表的切换、样式的增加减少 - 潜流 - pig在学习思考了](http://img4.ph.126.net/9iomXiW6wVg8ujLb1JstOA==/20547673316910084.jpg)
另外,还可以添加和删除样式表里的具体项,IE和Firefox用到了不同的函数:
Firefox里用cssRules属性返回样式表的所有项目,
![styleSheets以及js中实现样式表的切换、样式的增加减少 - 潜流 - pig在学习思考了](http://img5.ph.126.net/dhsbsZkVK5m4dbXG8sQ4Pw==/3086654594626082665.jpg)
![styleSheets以及js中实现样式表的切换、样式的增加减少 - 潜流 - pig在学习思考了](http://img8.ph.126.net/GVqKhv7chtzOqOF1aHZDdA==/2572962762129130228.jpg)
![styleSheets以及js中实现样式表的切换、样式的增加减少 - 潜流 - pig在学习思考了](http://img4.ph.126.net/lToe504aJ6P-cSH3djGLfQ==/2702159776439327234.jpg)
![styleSheets以及js中实现样式表的切换、样式的增加减少 - 潜流 - pig在学习思考了](http://img7.ph.126.net/CFFfkMkl0KZt-90yzIBbiQ==/2736781198574742847.jpg)
具体应用实例:
<link type="text/css" rel="stylesheet" href="yuexiuweb.com_files/style_1.css">
<link type="text/css" rel="stylesheet" href="yuexiuweb.com_files/style_2.css">
<script type="text/javascript">
var doAlerts=false;
function changeSheets(whichSheet){
whichSheet=whichSheet-1;
console.log(document.styleSheets);
if(document.styleSheets){
var c = document.styleSheets.length;
if(doAlerts)
alert('Change to Style '+(whichSheet+1));
for(var i=0;i<c;i++){
if(i!=whichSheet){
document.styleSheets[i].disabled=true;
}else{
document.styleSheets[i].disabled=false;
}
}
}
}
</script>
</head>
//切换样式~~
<div class="part">
<a class="a1" href="javascript:changeSheets(1)">小图标</a>
<a class="a2" href="javascript:changeSheets(2)">大图标列表</a>
</div>
<link type="text/css" rel="stylesheet" href="yuexiuweb.com_files/style_2.css">
<script type="text/javascript">
var doAlerts=false;
function changeSheets(whichSheet){
whichSheet=whichSheet-1;
console.log(document.styleSheets);
if(document.styleSheets){
var c = document.styleSheets.length;
if(doAlerts)
alert('Change to Style '+(whichSheet+1));
for(var i=0;i<c;i++){
if(i!=whichSheet){
document.styleSheets[i].disabled=true;
}else{
document.styleSheets[i].disabled=false;
}
}
}
}
</script>
</head>
//切换样式~~
<div class="part">
<a class="a1" href="javascript:changeSheets(1)">小图标</a>
<a class="a2" href="javascript:changeSheets(2)">大图标列表</a>
</div>