2013-11-24 25 views
0

我試圖解決一個問題,雖然似乎已經回答了好幾次,但沒有任何解決方案適用於我。 這種情況是當用戶按下一個按鈕將他重定向到另一個頁面(同一個域),然後很少有動作完成重新定向到初始時。所以,首先,我需要獲取用戶重定向頁面的新引用者。我試着用新的引薦或不引用解決方案,如下面的人沒有運氣:Javascript - 如何在重定向後獲取新窗口Referrer

function a() { 
    var ref = window.open("http://localhost:8080/ui/about"); 
    ref.addEventListener('loadstart',function(iABObject){ 
    alert("print something"); 
    ToDo(); 
}        

或第二個解決方案

function a() { 
    window.location.href = "http://localhost:8080/ui/about"; 
    if(window.location.href.indexOf("localhost:8080/ui/about")>-1){ 
    alert("print something"); 
    ToDo(); 
    } 
} 

任何形式的幫助表示讚賞。

+0

你的問題和代碼是沒有意義的。重定向是一個簡單的'window.location',這就是你要求的嗎? – David

+0

設置'href'將開始加載一個新頁面,之後的任何內容都不會被執行。 – Teemu

+0

請看看我第一次嘗試使用EventListener。我認爲這個例子描述了我想要做什麼,這是當第二個窗口打開ToDo()被調用的函數時。但ToDo()永遠不會被調用。 – user2008973

回答

1

我想你想要做這樣的事情: pageA的:

function onClickMyButton(){ 
    window.location = "pageB"; 
} 

頁面B:

... do some stuff 
window.location = document.referrer; 
+0

謝謝你的回答。我認爲這是一個非常好的方法,但在我的情況下,我不想把東西放在頁面B上。從我的搜索中,我意識到ToDo()永遠不會被調用的原因是ref.addEventListener('loadstart',function (iABObject)需要一個設備API庫,這不是我的情況,所以,這些問題就形成了把一個監聽器放在一個捕獲事件的新窗口上。 – user2008973