ブラウザがIE8の場合、Magento Goにボディクラスを追加するにはどうすればよいですか? [閉まっている
-
16-10-2019 - |
質問
ブラウザがIE8の場合、次のカスタムレイアウトアップデートXMLをMagentoで使用してボディクラスを追加します。現在、このコードは、IE8のみではなく、すべてのブラウザにクラスを追加しています。 IE8のクラスのみを追加するだけで、これを書くにはどうすればよいですか?
<reference name="root">
<action method="addBodyClass">
<classname>ie8</classname>
<if>IE 8</if>
</action>
</reference>
解決
編集
フッターに以下のJSを追加します。そして、それは機能するはずです。
if (navigator.appName == "Microsoft Internet Explorer") {
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})");
//If the regEx through the userAgent is not null
ieVersion = -1;
if (re.exec(ua) != null) {
//Set the IE version
ieVersion = parseInt(RegExp.$1);
}
if (ieVersion == 8){
$$('body')[0].addClassName('ie8');
}
}
Magento Goの経験はありませんが、CEまたはEEに似ている場合は、雑多なJavaScriptを追加できる構成パネルにテキストアレアが必要です。
Magento CEまたはEEの古い答えあなたがしようとしていることはうまくいきません。 addBodyClass
Meyhodは、1つのパラメーターのみ...クラス名。
できることは、このコンテンツでJSファイルを作成することです。
document.observe("dom:loaded", function() {
$$('body')[0].addClassName('ie8');
});
このファイルを「IE8.js」と呼び、JSフォルダーに配置しましょう。これをレイアウトファイルに追加します。
<default>
<reference name="head">
<action method="addItem">
<type>js</type>
<name>ie8.js</name>
<params/><if>IE 8</if>
</action>
</reference>
</default>
キャッシュをクリアして、試してみてください。
所属していません magento.stackexchange