I have an array that is dynamically populating an iframe.How do i trigger an alert after a few seconds after an ID loads?? would DOMLoaded get used here?
const $iframe = $("#content-frame");
const myIds = ['1_aq4jiqb', '1_4u0ocu4u'];
let cnt = 0;
setInterval(function() {
const url = 'https://www.example.com/' + myIds[cnt] + '/embed/dynamic?';
$iframe.attr('src', url);
console.log(url);
cnt++;
if (cnt >= myIds.length) cnt = 0; // wrap the list
}, 3000);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<iframe id="content-frame" src="" width="400px" height="400px"></iframe>
You can use the onload event
<script>
var iframe = document.createElement('iframe');
iframe.onload = function() { alert('myframe is loaded'); }; // before
setting 'src'
iframe.src = '...';
document.body.appendChild(iframe);
</script>