Как я могу добавить класс тела в Magento Go, если браузер IE8? [закрыто]
Я использую следующий XML-файл обновления пользовательского макета в Magento Перейдите к добавлению класса тела, если браузер IE8. В настоящее время этот код добавляет класс для каждого браузера вместо только IE8. Как я могу написать это так, чтобы он добавлял класс только для IE8?
<reference name="root">
<action method="addBodyClass">
<classname>ie8</classname>
<if>IE 8</if>
</action>
</reference>
1 answers
[ Редактировать]
Добавьте 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
мейход принимает только один параметр... имя класса.
Что вы можете сделать, так это создать файл 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>
Очистите кэш и запустите его.