用jQuery插入IE条件语句(注释)?

时间:2012-01-15 13:39:35

标签: jquery if-statement append

我尝试使用jQuery为IE7添加一个条件语句,但它不能动态工作(如果它是硬编码的,它有效,所以我知道这与jQuery附加条件的实际“注释”的方式有关语句)。

我正在使用的代码是:

$("head").append("<!--[if IE 7]>");
$("head").append("<link>");
css = $("head").children(":last");
    css.attr({
    rel:  "stylesheet",
    type: "text/css",
    href: "css/IE7.css"
});
$("head").append("<![endif]-->");

我的想法是,这与<>相关,也许这些需要进行urlencoded?,怎么做?

任何人都有一个解决方案,不涉及使用jQuery定位每个CSS属性(有几十个CSS修复,所以这不是一个解决方案)。

2 个答案:

答案 0 :(得分:4)

您可以使用$.browser检查浏览器版本并采取相应措施:

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

答案 1 :(得分:0)

我选择了Conditionizr,它作为独立的API为您完成所有这些并且比jQuery更可靠:http://conditionizr.com