You have the afterRender
callback in knockout.js
:
foreach: { data: myItems, afterRender: renderedHandler }
Inside your handler check whether the length of the rendered collection is equal to the length of the items collection. If not don’t execute the full rendered logic that you intend to use.
renderedHandler: function (elements, data) {
if ($('#containerId').children().length === this.myItems().length) {
// Only now execute handler
}
}