As per the title, is it necessary to wait for the DOM to load before calling ko.applyBindings
or will Knockout handle this automatically?
I.e - am I saf
No KO doesn't handle this automatically (so the self invoking function would work only at the bottom your page), you have to wait for the DOM loaded with the ko.applyBindings
call.
From the documentation:
To activate Knockout, add the following line to a
<script>
block:
ko.applyBindings(myViewModel);
You can either put the script block at the bottom of your HTML document, or you can put it at the top and wrap the contents in a DOM-ready handler such as jQuery’s $ function.