jQuery .html():它会抓取相关的CSS信息吗?

时间:2015-07-21 04:41:39

标签: jquery html ajax

在我的页面上,我引用了一个外部css文件,如下所示:

- (void)textViewDidEndEditing:(UITextView *)theTextView
{
     if (![textView hasText]) {
     lbl.hidden = NO;
}
}

- (void) textViewDidChange:(UITextView *)textView
{
    if(![textView hasText]) {
      lbl.hidden = NO;
}
else{
    lbl.hidden = YES;
 }  
}

这将样式应用于各种HTML元素。

如果我像这样将所有HTML内容发送到服务器(最终制作成PDF):

<link rel="stylesheet" href="css/General.css">

是否也会存储相关的CSS?或者它不是因为它不是内联css?

如果没有,我如何克服这一点,以便将所有网站内容发送到服务器?

1 个答案:

答案 0 :(得分:1)

这是一些jQuery代码,它采用外部CSS并内联它,这可能会有所帮助:

$("link").each(function(i, el) {
    var jel = $(el);
    var href = jel.attr("href");
    if(href && jel.attr("rel") === "stylesheet") {
        $.when($.get(href))
        .done(function(response) {
            $('<style />').text(response).appendTo($('head'));
            jel.remove();
        });
    }
});

此代码将遍历文档头中的样式表链接并内联每个链接。只要CSS文件没有任何外部依赖关系,例如图像,字体或导入,这将捕获所有CSS。

请记住它是异步的,所以如果你想知道它什么时候完成,你需要在检索完所有资产时给它一个回调。