【问题标题】:dynamic CSS loading in IE won't workIE 中的动态 CSS 加载不起作用
【发布时间】:2011-04-01 15:15:47
【问题描述】:

我的页面中有一个按钮和 onclick 事件,如果应该将来自服务器的 CSS 文件附加到 <head> 并执行其他操作。 它在 FF 中完美运行,但在 IE 中似乎不起作用(它确实将 <link> 附加到 <head> - 但 CSS 不会影响元素)

这是我当前的代码:

function loadDynamicCss(filename) {
    var fileref = document.createElement("link")
    fileref.setAttribute("rel", "stylesheet")
    fileref.setAttribute("type", "text/css")
    fileref.setAttribute("href", filename)
    document.getElementsByTagName("head")[0].appendChild(fileref);
}

这是什么原因造成的?

谢谢!

【问题讨论】:

  • 您是否尝试重新加载相同的样式表?
  • 这是一个简单的 IE 缓存问题吗?您是否尝试过将附加链接标签中的 url 粘贴到 IE 的 URL 字段中,然后重新加载页面?

标签: javascript html css internet-explorer


【解决方案1】:

试试这个功能:

function include_css(url) {
var page = document.getElementsByTagName('head')[0],
        cssElem = document.createElement('link');

        cssElem.setAttribute('rel', 'css');
        cssElem.setAttribute('type', 'text/css');
        cssElem.setAttribute('href', url);

        page.appendChild(cssElem);
}

【讨论】:

  • 在使用 ejs 事后呈现视图时对我不起作用。
  • @Himberjack:你能确认这个解决方案对你有用吗?
猜你喜欢
  • 2010-11-14
  • 2011-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多