I am trying to bind html containing some script tags using knockout html binding. I am running into a timing issue.
Knockout observable variable
public customHtml: KnockoutObservable<string> = ko.observable<string>();
Html
<div id="customHtml" data-bind="html: customHtml"></div>
Script in Html causing issue
<script type="text/javascript" src="https://s7d1.scene7.com/s7viewers/html5/js/VideoViewer.js"></script>
<script type="text/javascript">
//var s7videoviewer = new s7viewers.VideoViewer();
if(typeof s7viewers !== 'undefined'){
alert('No timing issue');
}else{
alert('Timing issue');
}
</script>
Script works correctly with a delay
<script type="text/javascript">
//var s7videoviewer = new s7viewers.VideoViewer();
setTimeout(function(){
if(typeof s7viewers !== 'undefined'){
alert('No timing issue');
}else{
alert('Timing issue');
}
}, 3000);
</script>