Pregunta

Ok, es un poco extraño aquí, no he visto ningún otro informe de esto, hemos recibido algunos errores de UI reportados por usuarios de IE11 recientemente, después de hacer algunas pruebas me di cuenta de que después de realizar un reRender (estoy usando A4J) IE11 está poniendo HTML elementos en el lugar equivocado, por ejemplo.

<s:div id="parent" rendered="#{someCondition}">
    <div id="brother"></div>
    <div id="sister"></div>
</s:div>

aparece así después de volver a renderizar

<s:div id="parent" rendered="#{someCondition}">
    <div id="brother">
        <div id="sister"></div>
    </div>
</s:div>

Lo que obviamente está causando estragos en el diseño.

Estoy mezclando bastante componentes JSF/HTML, pero ¿no creo que esto debería causar problemas?

¿Alguna idea de lo que podría estar causando esto?

JSF 1.2 | Richfaces 3.3 | Estiramiento

¿Fue útil?

Solución

¿Has intentado configurar una metaetiqueta para IE8 modo de renderizado:

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" />

Como he oído, RichFaces 3 solo admite hasta Internet Explorer 8, o podría considerar cambiar a RichFaces 4 para obtener compatibilidad con el navegador actual.

Microsoft:cómo garantizar la compatibilidad

Espero que esto ayude.

Otros consejos

Como mi problema con el renderizado ajax era simple, opto por cambiar la implementación (cargar todos los formularios y simplemente alternar la visibilidad con jQuery), pero he dedicado algún tiempo a esto y ahí va mi contribución.

Algunos de los problemas de renderizado se pueden reparar con estas actualizaciones:https://ruleoftech.com/2015/patching-richfaces-3-3-3-ajax-js-for-ie11 http://ruleoftech.com/2013/patching-richfaces-3-3-3-ajax-js-for-ie9

También puede intentar crear un parche de prototipo.js ubicado en richfaces-impl.jar org\ajax4jsf\javascript\scripts, cambiando el método que configura el navegador en IE usando navigator.userAgent.

Browser: {
IE: (!!(window.attachEvent &&
    navigator.userAgent.indexOf('Opera') === -1) 
    || (navigator.userAgent.toLowerCase().indexOf("like gecko") > -1 
    && navigator.userAgent.toLowerCase().indexOf("11.") > -1) )

Ahora, si depura Prototype.Browser en la consola del navegador, será fiel a IE11.

Preste atención a que RF puede "minimizar" todos los scripts de terceras bibliotecas que esté utilizando.
Verifique los archivos cargados en el <head> del HTML.Quizás todos esos cambios deberían realizarse en richfaces-impl-3.3.3.Final.jar/org/ajax4jsf/framework.pack.js.

Utilizo la Guía Richffaces-3-3-3-AJAX-JS-IE-IE9 para poder usar RichFaces 3.3.3 con IE11.Acabo de actualizar la versión 0.9.9.7 de Sarissa en Ajax.js.

La meta TAG X-UA-Compatible no pudo usarla en mi caso, fue en un iframe (niño) y ignoré la etiqueta meta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top