我在同一目录下有三个简单的 HTML 文件:
index.html
"page2.html"和"page3.html"(内容大致相同)
index.html 包含一个指向另外两个 HTML 文件之一的
当我第一次加载
但是,当我关闭选项卡并重新打开页面(index.html)时,它可以正常工作并打印出“这是页面3的内容”。但是当我将其更改回 page2.html 时,它仍然停留在页面3上。
这很奇怪。我猜测浏览器正在缓存页面或类似的东西。
当我添加:
然后,它会打印正确的文件位置。(但是
这意味着即使浏览器检测到文件已更改,当页面重新加载时,它甚至不会重新加载
是什么导致了这种奇怪的行为?我该如何解决?
谢谢。
P.S. 使用Firefox 29进行测试。
P.S.(2)所有文件都在我的电脑上,我没有从远程服务器获取它们。
index.html
<html>
<head>
<title>Page 1</title>
</head>
<body>
<iframe src="page2.html"></iframe>
</body>
</html>
"page2.html"和"page3.html"(内容大致相同)
<html>
<head>
<title>Page 2</title>
</head>
<body>
This is the content of page 2
</body>
</html>
<html>
<head>
<title>Page 3</title>
</head>
<body>
This is the content of page 3
</body>
</html>
index.html 包含一个指向另外两个 HTML 文件之一的
<iframe>
。当我第一次加载
index.html
时,它按预期工作并打印出“这是页面2的内容”。但是当我将 src
属性更改为“page3.html”,然后重新加载页面时,什么也没有改变。它继续告诉我“这是页面2的内容”,即使它应该加载页面3。但是,当我关闭选项卡并重新打开页面(index.html)时,它可以正常工作并打印出“这是页面3的内容”。但是当我将其更改回 page2.html 时,它仍然停留在页面3上。
这很奇怪。我猜测浏览器正在缓存页面或类似的东西。
当我添加:
<script>
document.write(document.querySelector("iframe").src);
</script>
然后,它会打印正确的文件位置。(但是
iframe
的内容仍然是错误的。)这意味着即使浏览器检测到文件已更改,当页面重新加载时,它甚至不会重新加载
iframe
。是什么导致了这种奇怪的行为?我该如何解决?
谢谢。
P.S. 使用Firefox 29进行测试。
P.S.(2)所有文件都在我的电脑上,我没有从远程服务器获取它们。