Odwrócenie kolejności wykonywania skryptu

Posted In: Bez kategorii

Załóżmy, że nie mamy pełnej kontroli nad kolejnością części kodu javascript, a nasz kod, który mamy jedynie możliwość wpisać wyżej, chcemy wykonać natychmiast po wykonaniu kodu poniżej, nie mając dostępu do callbacków:

Z sytuacją taką możemy się spotkać, gdy mamy wymuszony następujący kod html:

<script>
// miejsce na nasz kod
/* ---------- */
// kod, którego nie możemy przenieść wyżej z jakiegokolwiek powodu
</script>

W takich sytuacjach polecam łatwe, szybkie, choć nienajładniejsze rozwiązanie:

setTimeout(function() {
   // nasz kod
}, 0);

Tym sposobem wymusimy na przeglądarce wykonanie bloku kodu, którego nie możemy przenieść wyżej, a następnie natychmiast naszej funkcji zwrotnej z setTimeout.