Mostrando entradas con la etiqueta javascript. Mostrar todas las entradas
Mostrando entradas con la etiqueta javascript. Mostrar todas las entradas

martes, 5 de febrero de 2008

CoolMenus 3 error: There seems to be an error with this layer

Al visualizar en Explorer la página con CoolMenus3 (dentro de Struts Menu) me aparece el siguiente error:

CoolMenus 3 error:
"There seems to be an error with this layer: Frame [object] Layer: 0.divoCMenu1_0"

Para solucionar este error debemos sustituir esta linea en la función:

coolmenus3.js

function makeCoolMenu(name){
....
....
/*LINEA ANTIGUA bw.filter=(bw.ie6||bw.ver.indexOf("MSIE 5.5")>-1) && !bw.mac*/

bw.filter=(bw.ie7||bw.ie6||bw.ver.indexOf("MSIE 5.5")>-1) && !bw.mac

}

y también en esta otra función añadimos la siguiente línea:

coolmenu-config.js

function lib_bwcheck(){ //Browsercheck (needed)

....

this.ie7=(this.ver.indexOf("MSIE 7")>-1 && this.dom)?1:0;

....
this.ie=this.ie4||this.ie5||this.ie6 || this.ie7
.....
this.bw=(this.ie7 || this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5 || this.dom)

return this

}

No se visualiza struts menu en explorer pero si en firefox

Me ha ocurrido este extraño error de que en Firefox el struts-menu basado en coolmenus 3 se muestra y funciona correctamente, pero en Explorer no se visualiza.

En explorer el error que se me muestra es: "oCMenu no está definido"

Para solucionar este error debemos colocar los includes de javascript del coolmenu justo después de la etiqueta body. Este es un requisito de explorer para que funcionen estos includes.

body>
script language="JavaScript" type="text/javascript" src="/js/coolmenus3.js"> /script>
script language="JavaScript" type="text/javascript" src="/js/coolmenu-config.js"> /script>

Una vez realizado esto ya se nos va a mostrar el menu tanto en Firefox como en explorer