这是我的代码源:
nodeCss = $('<link rel="stylesheet" href="about:blank" type="text/css"
media="all" />');
nodeCss.attr('href',css_file);
$("head").append(nodeCss);
我在 IE 上遇到两个问题:
第一个是样式表第一次被忽略:我的页面允许我重新加载代码,当我这样做时,样式表不会被忽略。在插入 styleSheet 所针对的新元素之前,可能必须加载样式表。
第二个问题,所以第一个问题可以被“破解”(因为仅在 IE 上),它是我的动态样式表中的背景“url(...)”永远不会通过 javascript 加载到动态加载 css 文件中。与 HTML 上的普通样式表相同的操作宽度会导致背景正常。还有一点,只有 IE:Chrome 和 Firefox 的表现非常好。
抱歉我的语言不通,我会说一点英语,可以理解。
非常感谢。
最佳答案
尝试在 IE 浏览器中使用 document.createStylesheet
。 MSDN 有一个 article关于如何使用此方法。
潜在的跨浏览器解决方案:
(document.createStyleSheet) ? document.createStyleSheet(css_file) : $('<link rel="stylesheet" type="text/css" href="' + css_file + '" />').appendTo('head')
关于Javascript Jquery 添加样式表 IE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7675184/