jquery - 附加 CSS 在 IE8 中无法正常工作

标签 jquery css

$("head").append('<link href="xxx.css" rel="stylesheet" type="text/css"/>');

我发现这个代码片段在 IE 8 中不起作用?

最佳答案

根据this jquery 站点上的错误报告显示,在 IE8 中将 css 文件附加到包含相对链接的 dom 时很可能存在问题。

该错误的海报表明按如下方式添加可能有效:

    var style = document.createElement("link");
    style.setAttribute("type", "text/css");
    style.setAttribute("rel", "stylesheet");
    style.setAttribute("href", "xxx.css");
    jQuery("head")[0].appendChild(style);

或者使用绝对 URL 也可以:

    $('<link rel="stylesheet" type="text/css" href="http://yoursite.com/css/xxx.css">').appendTo('head');

尽管他接着说,通过 @import 包含在附加 css 文件中的任何文件也不会按预期加载。

我建议尝试一下这些测试用例,看看哪些内容适合您,哪些内容不适合(如果有效,您应该在 HTML 窗口中看到灰色背景):

OP问题中使用的方法:http://jsfiddle.net/vs5NC/20/

我的回答中的第一个可能的解决方案:http://jsfiddle.net/vs5NC/17/

我的回答中的第二个可能的解决方案:http://jsfiddle.net/vs5NC/19/

如果这些都不起作用,则可能是 Chris Fulstow 的 answer对于类似的问题可能是一个可行的解决方案。

关于jquery - 附加 CSS 在 IE8 中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11963572/

相关文章:

jquery - jquery 2.0.2 ie10 中未定义 json

javascript - 是否可以在初始化后取消初始化 jQuery 插件?

javascript - jquery 图像选择器在 IE7 中不起作用

javascript - 按钮单击 jquery 函数时,html 表响应未显示在 MVC View 中

jquery - 无法对齐 UI 工具提示中的部分文本?

javascript - 将 jQuery 命名空间注入(inject) AngularJS

html - 带有 chrome 的外部样式表

html - 根据 lang 属性为所有元素设置 css 样式

css - 如何在使用 Bootstrap 4 和 Flex 制作的笛卡尔平面中拉伸(stretch)网格项?

css - 是什么导致这个导航栏看起来不同?