关键词

浅析JS刷新框架中的其他页面 && JS刷新窗口方法汇总

浅析JS刷新框架中的其他页面 && JS刷新窗口方法汇总

1. JS刷新框架中的其他页面

在JS刷新框架中,要刷新其他页面,可以使用以下代码:

window.parent.location.reload();

此代码可以重新加载父窗口中当前页面所在的框架集的所有页面。

同时,我们还可以利用window.open方法打开一个新的窗口,然后再用window.close方法来关闭当前窗口。代码如下:

window.open("http://www.example.com");
window.opener=null;
window.close();

这段代码会打开一个新的窗口,并在新窗口中加载 http://www.example.com 页面。然后,它将当前窗口的引用设置为null(window.opener=null),以防止在关闭窗口时出现一些奇怪的问题。最后,它使用window.close方法关闭当前窗口。

2. JS刷新窗口方法汇总

2.1 location.reload()

使用location.reload()方法可以重新加载当前窗口的页面。这个方法可接受一个布尔值参数,如果参数值为true,则强制从服务器重新加载页面,否则使用本地缓存的内容。代码如下:

location.reload(); // 重新加载页面
location.reload(true); // 强制重新加载页面

2.2 window.location.href

使用window.location.href属性可以将当前窗口的URL设置为指定的URL,以此来重新加载页面。代码如下:

window.location.href = "http://www.example.com"; // 加载 http://www.example.com 页面

2.3 history.go()

使用history.go()方法可以重新加载页面中的历史记录。这个方法接受一个整数参数,它表示导航的历史记录要跳转的个数。如果参数值大于0,则向前导航;如果参数值小于0,则向后导航;如果参数值等于0,则重新加载当前页面。代码如下:

history.go(0); // 重新加载当前页面
history.go(-1); // 后退一页
history.go(1); // 前进一页

2.4 location.replace()

使用location.replace()方法可以用新的URL取代当前页面。这个方法不会将新URL添加到历史记录中,因此用户不能使用“回退”按钮返回到之前的页面。代码如下:

location.replace("http://www.example.com"); // 用 http://www.example.com 页面取代当前页面

3. 示例说明

假设我们有一个页面,它显示了当前时间,并有一个刷新按钮,用于重新加载页面。

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>页面标题</title>
    <script>
      function reloadPage() {
        window.location.href = window.location.href;
      }
    </script>
  </head>
  <body>
    <h1>当前时间:</h1>
    <p id="currentTime"></p>
    <button onclick="reloadPage()">刷新</button>
    <script>
      function updateCurrentTime() {
        var currentTimeElement = document.getElementById("currentTime");
        currentTimeElement.innerHTML = new Date().toLocaleString();
      }
      setInterval(updateCurrentTime, 1000);
    </script>
  </body>
</html>

这个页面包含一个reloadPage()函数,当用户点击“刷新”按钮时,它将使用window.location.href来重新加载页面。同时,页面还包含一个用于显示当前时间的元素,在这个元素中,我们将使用setInterval定时器来更新时间。

我们还可以创建一个跨域的页面,并使用window.parent.location.reload()方法,让它重新加载父页面中的所有框架。假设,我们已经在框架集A中载入了两个框架:frame1和frame2。

在frame1中,我们创建如下页面:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>页面标题</title>
    <script>
      function reloadFrames() {
        window.parent.location.reload();
      }
    </script>
  </head>
  <body>
    <h1>这是frame1</h1>
    <button onclick="reloadFrames()">刷新所有框架</button>
  </body>
</html>

当用户点击“刷新所有框架”按钮时,将使用window.parent.location.reload()方法让父页面重新加载所有框架。这个方法将重新加载在框架集A中的所有框架,包括frame1和frame2。

本文链接:http://task.lmcjl.com/news/10171.html

展开阅读全文