javascript - 如何使用 JavaScript/jQuery 有条件地添加样式表?

标签 javascript jquery internet-explorer internet-explorer-9 conditional-comments

我在网上查找了以下问题的合适解决方案,但似乎找不到有用的解决方法;

我们正在使用 Umbraco CMS 来显示客户的网站,这不允许我们添加通常在 HTML 的 中执行的条件注释。因此,我一直在努力寻找一种方法让 JavaScript 或 jQuery 有条件地显示特定于 IE9 的样式表。

到目前为止我看到的选项如下:

if ($.browser.msie && parseInt($.browser.version, 10) === 7) {
    $('head').append('<link>', {
        rel:  'stylesheet',
        type: 'text/css',
        href: 'css/ie9.css'
    });
}

并使用 conditionizr(由于“.add”函数的控制台错误,它没有工作)。

对此有什么想法吗?

最佳答案

无需将标记名称及其属性作为两个单独的参数传递给 append(),您需要传递一个完全构造的 jQuery 对象(或 HTML 字符串)。

$('head').append(
    $('<link>', {
        rel:  'stylesheet',
        type: 'text/css',
        href: 'css/ie9.css'
    })
);

关于javascript - 如何使用 JavaScript/jQuery 有条件地添加样式表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28479107/

相关文章:

javascript - jQuery 多次点击元素重载内容

javascript - jQuery 中除 "input"之外的所有内容的自定义上下文菜单

javascript - 在 IE 7 的对象和特定子项的 CSS 中更改颜色

windows - 读取 Internet Explorer 保护模式注册表

javascript - 这个例子中 @include 的 CSS 用法?我可以用@import 替换它们吗?

javascript - 无法在 php 中使用带进度条的 XMLHTTPRequest 提交数据

javascript - 返回函数 Javascript

javascript - 为什么我的新闻通讯表单在 Amazon CloudFront 上不起作用?

javascript - ASP.NET Ajax 出现错误,代码为 0

php - 忽略 if 语句