【发布时间】:2011-01-15 01:00:03
【问题描述】:
当我改变它在 DOM 中的位置时,有什么方法可以阻止 iframe 重新加载其内容?简单例子:
<script type="text/javascript">
function moveiframe() {
var dest = document.getElementById('newparent');
dest.appendChild(document.getElementById('googleframe'));
}
</script>
<iframe src="http://www.google.com" id="googleframe"></iframe>
<input type="button" onclick="moveiframe()" value="Move" />
单击“移动”按钮会更改 iframe 的父级,并重新加载其内容(在 Firefox 和 Chrome 中,但不是 IE)。
任何建议将不胜感激!
[已更新背景信息]
我正在页面底部的占位符 div 中加载网站的广告(以防止广告加载阻碍页面加载) - 然后在加载后将它们写入的 div 转移到正确的容器中。这一切都很好......除非投放的广告使用 iframe(如 google adsense),在这种情况下,广告会加载两次并且服务会混乱。
【问题讨论】:
-
iframe 被重新加载,因为您再次将其放入 dom (dest.appendChild(IFRAME))..考虑一个允许您移动它的 javascript 库。
-
andreas - 你知道任何允许你移动它的 JavaScript 库吗?有兴趣查看源代码,看看他们是如何做到的......
标签: javascript firefox google-chrome iframe