¿Cómo puedo agregar una clase de cuerpo en Magento Go cuando el navegador es IE8? [cerrado
-
16-10-2019 - |
Pregunta
Estoy usando el siguiente diseño de diseño personalizado XML en Magento, vaya a agregar una clase de cuerpo si el navegador es IE8. Actualmente, este código agrega la clase para cada navegador en lugar de solo IE8. ¿Cómo puedo escribir esto para que solo agrega la clase para IE8?
<reference name="root">
<action method="addBodyClass">
<classname>ie8</classname>
<if>IE 8</if>
</action>
</reference>
Solución
Editar
Agregue el JS a continuación en el pie de página. Y debería funcionar.
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');
}
}
No tengo experiencia con Magento GO, pero si es similar a CE o EE, debe tener un TextARea en el panel de configuración donde puede agregar JavaScript misceláneo.
Antigua respuesta para magento o eeLo que estás intentando no funcionará. los addBodyClass
Meyhod acceps solo un parámetro ... el nombre de la clase.
Lo que puede hacer es crear un archivo JS con este contenido:
document.observe("dom:loaded", function() {
$$('body')[0].addClassName('ie8');
});
Llamemos a este archivo 'ie8.js' y colóquelo en la carpeta JS. Ahora en su archivo de diseño, agregue esto:
<default>
<reference name="head">
<action method="addItem">
<type>js</type>
<name>ie8.js</name>
<params/><if>IE 8</if>
</action>
</reference>
</default>
Borre el caché y pruébelo.