javascript - 从缓存中重新加载 iframe

标签 javascript caching iframe

我一直在使用 document.getElementById(iframeName).src += ''; 重新加载我的 iframe 作为从父页面触发的另一个函数的一部分。我需要重新加载 iframe 页面的唯一原因是我需要重新运行该页面上的 javascript,所以我宁愿从缓存中重新加载 iframe 而不是从服务器重新下载它。不过,我不知道如何从缓存中重新加载 iframe。

此外,如果可能的话,我宁愿这样做而不必在函数中重新输入 iframe src,因为我在多个 iframe 上使用相同的函数。

最佳答案

您可以将相同的 src 重新分配给它自己。这样就可以了。见下文:

# frame.html

//your data  
<script> alert("yo!"); </script>

# yourPage.html

<iframe src="frame.html" id="myFrame"></iframe>
<button id="btn">Reload Iframe</button>

# your javascript for yourPage.html

var btn = document.getElementById("btn");
var frame = document.getElementById("myFrame");
var reloadFrame = function () {
    frame.src = frame.src;
}
btn.addEventListener("click", reloadFrame);

这应该可以解决问题。每当重新分配给它们的 srchref 属性时,浏览器都会重新加载图像、iframe 等元素。

关于javascript - 从缓存中重新加载 iframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26581612/

相关文章:

c++ - 使用页面文件进行缓存?

javascript - 防止子 iFrame 获得焦点

ios - iframe 在 iOS 上溢出 div

javascript - 将 javascript 添加到 iframe?

javascript - Fancytree - 将新元素添加到树节点(日期、注释等)

javascript - 使用 switch case JavaScript 更改图像

javascript - 在一个对象中找到一个为真的键并且匹配数组中的条目

javascript - AngularJS:如何缓存从 $http 调用返回的 json 数据?

php - magento 如何得出缓存键名?

javascript - 多平台 HTML5 游戏 DOM+CSS vs CANVAS vs 两者