2011-09-21 38 views
6

一旦window.location完成加載URL,我希望能夠調用jquery函數。這可能嗎?我似乎無法在網上找到關於此的任何信息。window.location加載新的URL後,可以調用一個函數嗎?

例如:

if(parseInt(msg.status)==1) { 
    window.location=msg.txt; 
    alert("This URL has finished loading") 
} 

感謝, - 保羅

+1

頁面正在加載你的一個嗎?如果是的話,把你的代碼放在新的頁面中。如果沒有,我認爲你不能這樣做。你爲什麼想這樣做? – nnnnnn

+0

你想從一個未打開的頁面執行代碼? – Einacio

+0

用戶首次登錄後,我需要加載我的索引頁面以初始化所有內容,但需要將它們轉發到另一個頁面以完成配置文件。 – Paul

回答

6

您可以使用目標頁面的window.onload(如果你有機會來修改頁面的代碼),也可以使用window.onunload在卸載當前頁面時啓動警報。新頁面加載後,您無法在當前頁面上執行代碼。

2

是的。

此頁面演示onload/onunload行爲。

<html> 
    <head> 
     <script> 
      window.doUnload = function(){ 
       alert("Here!"); 
      } 
      window.doLoad = function(){ 
       window.location="http://www.google.com"; 
      } 
     </script> 
    </head> 
    <body onload="doLoad();" onunload="doUnload();"></body> 
</html> 
+0

好主意,非常感謝:) – rkaartikeyan

0

在我第一次需要加載我的索引頁來初始化一切,但隨後在用戶登錄後需要將它們轉發給配置文件完成另一個頁面。

使用window.location的用戶重定向到您的索引,將查詢參數(像window.location=index.php?firstLogin=true)和索引重定向(使用javascipt的HTTP 300,頭()或任何你正在使用)到配置文件頁面後,如果該參數設置結束裝載

0

的iFrame

一個你可以使用(醜陋的)方法是不是使用了window.location,清除體內,增加有關道路的iframe,聽其onload功能。 之後,只要不是跨站點腳本,就可以在iframe內運行代碼。

我使用這種方法來執行小型自動化腳本,它不能真正在第三方插件上。


阿賈克斯

另一種方法可能會使用AJAX來加載頁面/主體內容。然後用新加載的身體替換你的身體並開始執行下一個功能。

相關問題