2013-03-15 520 views
1

我想重新加載父窗口,如果子窗口關閉。JavaScript的 - 重新加載父窗口,如果子窗口關閉

這是我當前的代碼,它打開一個彈出窗口,但它在關閉時沒有爲刷新父窗口編程。我不知道什麼樣的代碼添加

jQuery(document).ready(function($) { 

    jQuery('.top-buttons a').live('click', function(e){ 
     e.preventDefault(); 
     newwindow=window.open($(this).attr('href'),'','height=500,width=850'); 

     if (window.focus) {newwindow.focus()} 
     return false; 
    }); 
}); 
+1

所以,你在哪裏卡住了? – 2013-03-15 05:36:07

+0

仔細閱讀問題,我需要一個刷新父窗口,如果孩子關閉的代碼 – user007 2013-03-15 05:38:49

+0

它很難從原始問題中解決它。現在編輯它說如此。 – 2013-03-15 05:40:14

回答

2

嘗試:

newwindow = window.open($(this).attr('href'), '', 'height=500,width=850'); 
newwindow.onbeforeunload = function() { 
    console.log("popup closed") 
} 
+1

它工作,完美。謝謝 – user007 2013-03-15 05:43:35

0
在父窗口

這樣定義

function doStuffOnUnload() { 
    alert("Unloaded!"); 
    } 

if (typeof win.attachEvent != "undefined") { 
    newwindow.attachEvent("onunload", doStuffOnUnload); 
} 
else if (typeof win.addEventListener != "undefined") { 
    newwindow.addEventListener("unload", doStuffOnUnload, false); 
    } 

here我把它從

0

您卸載事件需要window.opener

window.opener.location.href = window.opener.location.href; 

應該被添加到窗口的關閉事件中。當你處理關閉事件example

所以重載父窗口只需調用window.opener.location.reload()documentation

+0

正如其他用戶所建議的location.reload()也會讓你在那裏。 – hammus 2013-03-15 05:43:27

1

您可以從子窗口中使用window.opener訪問父窗口。

1

嘗試在子窗口

 window.opener.location.reload(); 
相關問題