I have an iframe on my page that submits a form to a third party page. Once that third party is done with its calculation, it redirects back to my own site. I would like to detect when the iframe returns back to my own site.
My current approach is to use a timeout and check location.host of the iframe every 0.5 seconds. However, while the iframe is still on the third party site, I get a JS error, which I would like to avoid.
Is there a good way to figure out when the iframe’s location is back on my own server without getting a JS error?
You could wrap your check in a
try catchblock. Alternatively you could have the page which is on your host ‘call’ the parent. (something likeparent.notifyReady()) That way you avoid having to use asetIntervalYou could base your logic on whether to call the parent or not by using the
document.referrerpropertySo on your third page you could have something like this: