如何将所有父窗口的样式表插入到iframe的头部(samedomain)?
我基于类似问题尝试了代码:
function () {
var d = frames[0].document;
var stylesheets = $("link").outerhtml;
d.open();
d.write(
'<html><head>'+
stylesheets +
'<style type="text/css">'+
'<\/style><\/head><body><\/body><\/html>'
);
d.close();
}
显然,这在IE之外不起作用。提前谢谢。
编辑:根据安东尼的回答尝试:
$("link[type='text/css']").each(function() {
var stylesheet = $(this).clone();
$("iframe").contents().find("head").append(stylesheet);
});
答案 0 :(得分:3)
所选答案的一个问题是它使用.html()
,它只返回该元素的内部html内容,而不是元素本身。这是一个有效的解决方案:
$("link[type='text/css']").clone().appendTo($("iframe").contents().find("head"));
答案 1 :(得分:0)
$("link[type='text/css']").each(function() {
var stylesheet = $(this).html();
$("iframe").contents().find("head").append(stylesheet);
});