乐闻世界logo
搜索文章和话题

如何检测 iframe src 是否改变?

4 个月前提问
3 个月前修改
浏览次数41

1个答案

1

要检测一个iframesrc属性是否改变,你可以使用JavaScript添加一个事件监听器来监听load事件。当iframe的内容加载或重新加载时,load事件会被触发,此时你可以检查src属性是否与之前记录的值不同。

以下是如何实现的示例代码:

javascript
// 获取iframe元素 var iframe = document.getElementById('myIframe'); // 记录当前的src var currentSrc = iframe.src; // 监听load事件 iframe.addEventListener('load', function() { // 检测src是否改变 var newSrc = iframe.src; if (currentSrc !== newSrc) { console.log('iframe src has changed from ' + currentSrc + ' to ' + newSrc); // 更新当前src以便下次比较 currentSrc = newSrc; } });

将以上JavaScript代码与你的iframe元素一起使用,只要确保将myIframe替换为你的iframe元素的实际ID。

请注意,由于同源策略,如果iframe内容是跨域的,那么你可能无法访问到iframe内部的src属性。此时,你需要使用其他跨域通信技术,比如窗口消息传递(Window.postMessage)。如果iframe加载的内容和父页面不同源,你就必须依赖于iframe内的页面发送消息到父页面来告知src的改变。

2024年6月29日 12:07 回复

你的答案