Question

Ok, c'est un peu étrange ici, je n'ai vu aucun autre rapport à ce sujet, nous avons récemment eu des bugs d'interface utilisateur signalés par des utilisateurs d'IE11, après avoir fait quelques tests, j'ai réalisé qu'après avoir effectué un reRender (j'utilise A4J), IE11 met du HTML éléments au mauvais endroit, par exemple.

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

apparaît comme ceci après le rendu

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

Ce qui fait évidemment des ravages dans la mise en page

Je mélange un peu les composants JSF/HTML, mais je ne pense pas que cela devrait poser des problèmes ?

Avez-vous une idée de ce qui pourrait causer cela ?

JSF 1.2 | Richfaces 3.3 | Masculins

Était-ce utile?

La solution

Avez-vous essayé de définir une balise méta pour IE8 mode de rendu :

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

Comme je l'ai entendu dire, RichFaces 3 ne prend en charge que jusqu'à Internet Explorer 8, ou vous pourriez envisager de passer à RichFaces 4 pour bénéficier de la prise en charge actuelle du navigateur.

Microsoft :comment assurer la compatibilité

J'espère que cela t'aides.

Autres conseils

Comme mon problème avec le rendu ajax était simple, j'ai choisi de modifier l'implémentation (charger tous les formulaires et simplement basculer la visibilité avec jQuery) mais j'ai passé du temps avec cela, et voilà ma contribution.

Certains problèmes de rendu peuvent être réparés avec ces mises à jour :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

Vous pouvez également essayer de créer un correctif de prototype.js situé dans richfaces-impl.jar org\ajax4jsf\javascript\scripts, en modifiant la méthode qui définit le navigateur sur IE à l'aide de navigator.userAgent.

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

Maintenant, si vous déboguez Prototype.Browser sur la console du navigateur, vous obtenez fidèle à IE11.

Faites attention au fait que RF peut « minifier » tous les scripts de bibliothèque tierce qu'il utilise.
Vérifiez les fichiers chargés dans le <head> du HTML.Peut-être que toutes ces modifications devraient être apportées dans le fichier richfaces-impl-3.3.3.Final.jar/org/ajax4jsf/framework.pack.js.

J'utilise le guide Patching-RichFaces-3-3-3-AJAX-JS-FOR-IE9 pour pouvoir utiliser RichFaces 3.3.3 avec IE11.Je viens de mettre à jour la version 0.9.9.7 de Sarissa sur Ajax.js.

La META TAG X-UA-Compatible ne pouvait pas l'utiliser dans mon cas, c'était dans un iframe (enfant) et j'ai ignoré la balise Meta.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top