Javascript 我可以得到链接样式表的文本源吗?

Javascript 我可以得到链接样式表的文本源吗?,javascript,html,css,Javascript,Html,Css,我试图从link元素中获取css作为文本。 例如,对于样式元素,它是最简单的: [].map.call(document.styleSheets, function(styleSheet) { var tag = styleSheet.ownerNode.tagName.toLowerCase(); if (tag == 'style') { return styleSheet.ownerNode.textContent; } else if (tag == 'link')

我试图从link元素中获取css作为文本。 例如,对于
样式
元素,它是最简单的:

[].map.call(document.styleSheets, function(styleSheet) {
  var tag = styleSheet.ownerNode.tagName.toLowerCase();
  if (tag == 'style') {
    return styleSheet.ownerNode.textContent;
  } else if (tag == 'link') {
    //is it possible to receive source here without ajax?
  }
});

有没有办法在不将链接源作为文本加载的情况下获取链接源?

使用
document.styleSheets
您可以在页面上的所有加载的样式表之间进行交互。每一个都是css规则元素的列表。您可以获得这些css规则的
cssText
属性

基于,我提出了一个示例脚本,用于将所有css规则文本加载到页面上。希望对你有帮助

var cssStyles=“”;
//从索引0的索引1开始是浏览器的用户代理样式表。

对于(var i=1;它仅适用于有效的css规则。例如,如果源代码中存在“-moz-box-sizing”,并且css已加载到chrome中,则此选项将被删除。我认为您需要将其设置为
cssStyles+=“\n”+(style[item].cssText);
var cssStyles = "";

//Started at index 1 for index 0 is browser's user agent stylesheet.
for(var i=1; i<document.styleSheets.length; i++) {
    var style = null;
    with (document.styleSheets[i]) {
        if (typeof cssRules != "undefined")
            style = cssRules;
        else if (typeof rules != "undefined")
            style = rules;
    }
    for(var item in style) {
        if(style[item].cssText != undefined)
            cssStyles = (style[item].cssText);
    }
}

alert(cssStyles);