Ce que je veux, c'est fournir des commentaires de l'utilisateur sur l'état du fonctionnement grâce à l'étiquette du bouton. Initialement, le bouton dit "sauvegarder", une fois cliqué je veux changer l'étiquette à "enregistrer ..." entrer une autre fonction et une fois la fonction retourne changer l'étiquette à "sauvé" puis pause 2 secondes et remettre l'étiquette initiale "save" valeur.Tableau de bord: fournir les commentaires des utilisateurs en changeant l'étiquette du bouton
Voici le code:
function myClickHandler(event)
{
document.getElementById("button").object.textElement.color = "saving...";
functionx()
document.getElementById("button").object.textElement.color = "saved";
sleep (5000);
document.getElementById("button").object.textElement.color = "save";
}
Le problème est que, pour une raison que la dernière document.getElementById("button").object.textElement.color = "save";
est effectivement visible sur toile parce que la toile ou le bouton sont rendus qu'une seule fois la sortie I de myClickHandler
fonction. Un conseil?
Merci d'avance
Merci, ça marche (jusqu'à présent, je dois le tester encore sur le widget productif), je viens d'avoir à utiliser document.getElementById (« bouton ») object.textElement.innerText = labelText. au lieu de document.getElementById ("bouton"). Object.textElement.color = labelText; Le .color était une faute de frappe de mon côté, désolé. – Zsolt
Oui, cela fonctionne, testé maintenant. Triste que je ne comprends pas exactement pourquoi ça marche, mais je suppose que cela arrivera avec le temps. Merci encore Zsolt – Zsolt
Votre code original bloque le navigateur et ne lui permet pas de rendre. Tous vos appels sont synchrones. Cependant, setTimeout() est asynchrone, de sorte que le rendu peut être effectué pendant son exécution. –