从头部获取样式表内容
问题描述:
我想从头部使用javascript/jQuery获取某个样式表。 我不想使用$('head').get(0).innerHTML
或类似的原因头部充满了30多个脚本和链接元素。从头部获取样式表内容
这个我试过到目前为止
// that's the one
var $my_stylesheet = $(document.body.previousSibling).find('link:last');
//those did not work (result: "")
$my_stylesheet.get(0).innerHTML;
$my_stylesheet.text();
$my_stylesheet.html();
我能做些什么来得到头样式表的内容?
答
尝试通过Ajax调用请求:
var $my_stylesheet_url = $('head').find('link:first').attr('href');
var content;
$.get($my_stylesheet_url, function(data) {
content = data;
// do your staff here
});
答
访问JavaScript中的样式表,实际的办法就是参考document.styleSheets
。如果您使用的是Chrome或带Firebug的Firefox,则可以在Javascript控制台中输入该内容并查看其中的可用内容。
这里有一些很好的参考资料来看看。
答
如果您使用<link />
元素链接到样式表,你需要做一个AJAX请求来读取其内容。另外,这只适用于同一个域上的样式表。
$('link[rel="stylesheet"]').each(function (i, ele) {
$.get($(this).attr('href'), function (data) {
console.log(data);
});
});
如果您已经通过<style>
元素添加样式,您可以通过访问.text()
的内容。
$('style').each(function (i, ele) {
console.log($(this).text());
});
答
试试这个例子...这将获取第一个样式表
$.ajax({
'url': $(document).find('link')[0].href,
'dataType':'text',
'success':function(data){
alert(data);
}
});
的内容请张贴HTML片段。 – zzzzBov