如果我的页面上有一个带有css的样式标记,并且我编写了以下javascript,我将获得所有样式标记的css文本。
//compatibility: all
$("style").each(function () {
alert($(this).text());
});
我想从所有链接元素css文件中获取相同的文本,如下面的脚本。
//compatibility: IE Only
$("link").each(function(){
alert(this.sheet.cssText);
});
是否有上述脚本的跨现代浏览器友好版本?
答案 0 :(得分:1)
在不实际访问样式表的情况下访问CSS规则的另一种方法是创建一个元素,对其应用规则,然后使用jQuery访问其属性。像这样:
var NewElement = $('.SomeClass');
var TheHeight = NewElement.prop('height');
不确定这是否会有所帮助,但这是一个想法。无论如何你还想做什么?
修改强>
var sheet = document.styleSheets[0];
var rules = sheet.cssRules || sheet.rules;
rules[0].style.color = 'red';
答案 1 :(得分:0)
唯一可行的解决方案是使用AJAX:
$("link").each(function(){
$.get(this.href, function(css){
alert(css);
});
});
或者您可以使用document.styleSheets
您可以遍历样式表:
var styleSheets = document.styleSheets;
for(var i = 0; i < styleSheets.length; i++){
alert(styleSheets[i].cssRules)
}