Panel de control: proporciona comentarios de los usuarios cambiando la etiqueta del botón

StackOverflow https://stackoverflow.com/questions/1818494

  •  10-07-2019
  •  | 
  •  

Pregunta

Lo que quiero es proporcionar comentarios de los usuarios sobre el estado de la operación a través de la etiqueta del botón. Inicialmente, el botón dice "guardar", una vez que haga clic en Quiero cambiar la etiqueta a "guardar ..." ingrese otra función y una vez que la función regrese cambie la etiqueta a "guardado" luego haga una pausa de 2 segundos y vuelva a establecer la etiqueta en inicial "guardar" valor.

Aquí está el código:

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";
}

El problema es que, por alguna razón, solo el último document.getElementById (" button "). object.textElement.color = " save " ;; es realmente visible en el lienzo porque el lienzo o el botón se procesa solo una vez que salgo de la función myClickHandler . ¿Alguna pista?
Gracias de antemano

¿Fue útil?

Solución

Algo como esto podría funcionar mejor. Estoy bastante seguro de que setTimeout no bloquea.

function myClickHandler(event) {
    updateLabel("saving...");
    setTimeout("performFunctionX()", 250);
}

function performFunctionX() {
    functionx;()
    updateLabel("saved");
    setTimeout("updateLabel('save')", 5000);
}

function updateLabel(labelText) {
    document.getElementById("button").object.textElement.color = labelText;
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top