【问题标题】:Dynamically load CSS to document head and wait after load将 CSS 动态加载到文档头部并在加载后等待
【发布时间】:2014-12-18 08:09:28
【问题描述】:

如何将 CSS 文件动态添加到文档 HEAD 并等待文件完全加载?我正在使用 iframe,所以这是我如何将 CSS 动态插入到 iframe 中加载的文档的示例。

$(iframe).contents().find('head').append('<link rel="stylesheet" type="text/css" href="style.css" media="screen" />');

此代码仅添加 CSS 文件,但我需要在其内容加载后执行一些操作。任何想法? 我对所有选项都持开放态度,但不应将 CSS 文件的内容作为内联代码插入。

谢谢

【问题讨论】:

    标签: jquery css iframe load domdocument


    【解决方案1】:

    假设您对 jQuery 有所了解。 这可用于检查样式表是否已成功加载:

    if($("link[href='/path/to.css']").length)){
     // CSS succesfully loaded.
    }
    

    现在让我们构建您所追求的这个功能。 您正在将样式表附加到头部,因此当头部元素发生更改时,您要检查 CSS 是否已成功加载,然后做一些很棒的事情。 (或者在使用一些变量等加载 CSS 之前什么都不做。)

    $("head").change(function(){
       var url = "/path/to/stylesheet.css";
       if($("link[href='" + url + "']").length)){
         // CSS succesfully loaded.
       } else {
         // some problems with the CSS
       }
    });
    

    如果这不是您想要的,我希望这至少能让您开始做一些事情。

    最好的问候,

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-04
      • 1970-01-01
      • 1970-01-01
      • 2011-07-21
      • 2020-08-06
      • 1970-01-01
      • 2023-03-21
      相关资源
      最近更新 更多