2

ブラウザのスニッフィング/条件付きコメントを使用してIEに割り当てることなく、JavascriptinsertRuleとJavascriptのメソッドを切り替えることができるかどうか知りたいです。addRuleaddRule

CSSでは、特定のデバイス(IE :: pseudo-selectorなど)でサポートされていないプロパティを使用して、特定のブラウザーのルールを作成できます。Javascriptにも同様のトリックがありますか?

いくつかの洞察をありがとう!

4

2 に答える 2

1
if(sheet.addRule) { 
    sheet.addRule(...);
}
else
{
    sheet.insertRule(...);
}
于 2012-10-12T09:09:35.613 に答える
1

代わりに機能検出を使用してください。

var abstractedInsertOfRule = function (rule, stylesheet){
    //if (object) is a quick way to test if the object is defined
    //in browsers that do not implement "insertRule",
    //if (insertRule) returns "falsy"
    if (insertRule) {
        insertRule(rule, stylesheet);
    } else if (addRule) {
        addRule(rule, stylesheet);
    } else {
        //call other rule insertion methods here
    }
};
于 2012-10-12T09:14:53.000 に答える