小编典典

将CSS添加到iFrame

css

现在,我正在通过jquery加载iframe:

 $(window).load(function(){
  $('iframe').load(function() {
      $('iframe').show()
      $('#loading').hide();

    });
    $('#loading').show();
    $('iframe').attr( "src", "http://www.url.com/");

  });

我有一个自定义样式表,希望将其应用于该页面。iframe中的页面不在同一域中,这就是为什么它很棘手的原因。我找到了允许您添加单个标签但不能添加整个样式表的解决方案。

编辑: 有问题的页面通过file://Mobile Safari 加载,因此跨域策略不适用。


阅读 1925

收藏
2020-05-16

共1个答案

小编典典

基于解决方案您已经找到了如何将CSS应用于iframe?:

var cssLink = document.createElement("link") 
cssLink.href = "file://path/to/style.css"; 
cssLink .rel = "stylesheet"; 
cssLink .type = "text/css"; 
frames['iframe'].document.body.appendChild(cssLink);

或更多jqueryish(从使用jQuery将样式表附加到iframe):

var $head = $("iframe").contents().find("head");                
$head.append($("<link/>", 
    { rel: "stylesheet", href: "file://path/to/style.css", type: "text/css" }));
2020-05-16