1. 程式人生 > 實用技巧 >js重新整理當前頁面

js重新整理當前頁面

在寫JS程式碼時,用到JS來重新整理當前頁面的方法有幾種,比如最常用的reload(),location 等

reload 方法,該方法強迫瀏覽器重新整理當前頁面。

語法:location.reload([bForceGet]) 引數:bForceGet, 可選引數, 預設為 false,從客戶端快取裡取當前頁。true, 則以 GET 方式,從服務端取最新的頁面, 相當於客戶端點選 F5("重新整理")

replace 方法,該方法通過指定URL替換當前快取在歷史裡(客戶端)的專案,因此當使用replace方法之後,你不能通過“前進”和“後退”來訪問已經被替換的URL。

語法: location.replace(URL)

在實際應用的時候,重新重新整理頁面的時候,我們通常使用: location.reload() 或者是 history.go(0) 來做。因為這種做法就像是客戶端點F5重新整理頁面,所以頁面的method="post"的時候,會出現"網頁過期"的提示。那是因為Session的安全保護機制。可以想到:當呼叫 location.reload() 方法的時候, aspx頁面此時在服務端記憶體裡已經存在, 因此必定是 IsPostback 的。如果有這種應用: 我們需要重新載入該頁面,也就是說我們期望頁面能夠在服務端重新被建立, 我們期望是 Not IsPostback 的。這裡,location.replace() 就可以 完成此任務。被replace的頁面每次都在服務端重新生成。

你可以這麼寫: location.replace(location.href);

返回並重新整理頁面:

location.replace(document.referrer);
document.referrer //前一個頁面的URL

不要用 history.go(-1),或 history.back();來返回並重新整理頁面,這兩種方法不會重新整理頁面。

附:
Javascript重新整理頁面的幾種方法:

  1、history.go(0)
  2、location.reload()
  3、location=location
  4、location.assign(location)
  5、document.execCommand('Refresh')
  6、window.navigate(location)
  7、location.replace(location)
  8、document.URL=location.href

自動重新整理頁面的方法:

1.頁面自動重新整理:把如下程式碼加入<head>區域中

   <meta http-equiv="refresh" content="20">

其中20指每隔20秒重新整理一次頁面.

2.頁面自動跳轉:把如下程式碼加入<head>區域中

   <meta http-equiv="refresh" content="20;url=http://caibaojian.com">

其中20指隔20秒後跳轉到http://caibaojian.com頁面

3.頁面自動重新整理js版

   <script language="JavaScript">
       function myrefresh(){
          window.location.reload();
       }
       setTimeout('myrefresh()',1000); //指定1秒重新整理一次
   </script>

JS重新整理框架的指令碼語句

   //如何重新整理包含該框架的頁面用
     <script language=JavaScript>
        parent.location.reload();
     </script>

   子視窗重新整理父視窗
      <script language=JavaScript>
       self.opener.location.reload();
     </script>
      或 
<a href="javascript:opener.location.reload()">重新整理</a> 如何重新整理另一個框架的頁面用 <script language=JavaScript> parent.另一FrameID.location.reload(); </script>

如果想關閉視窗時重新整理或者想開窗時重新整理的話,在<body>中呼叫以下語句即可。

      <body onload="opener.location.reload()"> 開窗時重新整理
      <body onUnload="opener.location.reload()"> 關閉時重新整理

      <script language="javascript">
         window.opener.document.location.reload()
</script>