Jak powiedzieć javascript, aby natychmiast zaktualizował DOM?
Usiłuję załadować komunikat „ładowanie” do użytkownika, zanim funkcja czasochłonna zostanie wywołana w javascript.
HTML:
<p id='foo'>Foo</p>
Javascript:
var foo = document.getElementById('foo');
function tellViewerLoading() {
// Tell the user that loading is occuring.
foo.innerHTML = 'loading...';
}
function someActionThatTakesALongTime() {
// Do some action that takes a long time.
var i = 0;
while(i < 100000) {i++; console.log(i);};
}
function domUpdateDelayExperiment() {
tellViewerLoading();
someActionThatTakesALongTime();
}
domUpdateDelayExperiment();
JSFiddle:http://jsfiddle.net/johnhoffman/xDRVF/
Chcę, aby DOM był natychmiast aktualizowanytellViewerLoading()
jest nazywany.
Zamiast tego wydaje się, że DOM wydaje się być aktualizowany posomeActionThatTakesALongTime()
kończy bieg. W tym momencie wyświetlanie komunikatu ładowania jest bezużyteczne.
Jak powiedzieć javascript, aby natychmiast zaktualizował DOMtellViewerLoading()
jest nazywany?