Bonjour,
J'utilise les framework JSF (2.2) et PrimeFaces (6.1.2) dans une appli web.
Dans une page xhtml, j'affiche deux graphiques de chart.js.
Les graphiques ne peuvent s'afficher correctement qu'apr�s le load de la page par window.onload
(sinon, je me retrouve avec une l�gende de graphique en haut qui cache le titre, les infos bulles ne sont pas celles que j'ai d�finies etc).

J'ai donc ce code dans le head de la page pour d�clencher l'affichage des graphiques :

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
<script>
            window.onload = function ()
            {
                drawChart('espaceStandardGraphique1', 'idCanvasGraphique1');
                drawChart('espaceStandardGraphique2', 'idCanvasGraphique2');
            };
        </script>
La page est appel�e depuis une autre par :

Code HTML : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
<p:commandLink value="Espace standard" 
                       action="pageGraphiqueEspaceStandard.xhtml"/>

Le probl�me est que le window.onload de la page ne s'�xecute pas (rien ne s'affiche).
Pour que le window.onload de la page s'�xecute bien, je dois ajouter 'ajax=false' � l'appel de la page :

Code HTML : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
<p:commandLink value="Espace standard" 
                       action="pageGraphiqueEspaceStandard.xhtml"
                       ajax = "false"/>

Ici tout se passe bien, sauf qu'une page blanche s'affiche bri�vement avant d'afficher la page et ses deux graphiques.
Il y a donc un effet flash tr�s d�sagr�able, d'autant que mon fond de page est fonc�.
Comment faire pour supprimer ce flash ?

Notes :

J'obtiens le m�me flash avec le commandLink de JSF.

Si je remplace window.onload par
window.addEventListener('DOMContentLoaded', function () ...
ou
$(document).ready(function () ...
les graphiques ne s'affichent pas correctement (l�gende en haut qui cache le titre, les infos bulles ne sont pas celles que j'ai d�finies etc