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

jac*_*ope 1 css jquery

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

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

Jee*_*usu 6

根据对jQuery的网站错误报告,有可能是在IE8与附加的CSS文件包含相对链接DOM中的问题.

该bug的海报表明,如下添加它可能有效:

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

或者使用绝对网址也可能有效:

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

虽然他继续说通过附加的css文件中的@import包含的任何文件也不会按预期加载.

我建议给这些测试用例一个旋转,看看你有什么负载,什么没有(如果它有效,你应该在HTML窗口中得到一个灰色的背景):

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

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

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

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