Je suis en train d'utiliser le widget de traduction de Google sur l'un de mes sites avec le code fourni par Google suivant :
function googleTranslateElementInit() {
new google.translate.TranslateElement({pageLanguage: 'en', layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, 'google_translate_element');
}
</code></pre>
<p>Mon problème : La traduction s'exécute après le chargement de la page, mais j'ai aussi un script qui redimensionne automatiquement mes éléments de navigation principaux en fonction de leur largeur.</p>
<p>Ceci s'exécute avant que la traduction ne soit terminée, donc elle se redimensionne en fonction des libellés anglais non traduits. Une fois que la traduction a modifié les libellés de navigation, les éléments de navigation doivent être redimensionnés pour s'adapter aux mots nouvellement traduits, car ils sont susceptibles d'avoir une taille (largeur) différente de l'anglais.</p>
<p>J'ai essayé d'appeler le code de traduction Google avant d'exécuter le code de redimensionnement de la navigation principale, mais la traduction s'exécute de manière asynchrone, donc mon code s'exécute avant que la traduction ne soit terminée.</p>
<p>Y a-t-il un événement de rappel déclenché lorsque la traduction est terminée (ou un moyen de détecter quand la traduction est terminée), afin que je puisse attendre avant de tenter de redimensionner la navigation ?</p>
<p>De plus, j'ai besoin d'exécuter un script APRÈS que la page ait fini d'être traduite.</p></x-turndown>