window.opener.location.reload() and href()的區別

來源:互聯網
上載者:User

2個方法都是重新整理父視窗,但是其中還是有奧妙的哦。
      window.opener.location.reload(); 這個方法在強迫父視窗的時候,在有些IE瀏覽器(比如安全設定高)的情況下,會彈出一個確認對話方塊,提示是不是要重新再重新整理一次頁面,這可是比較鬱悶的事情哦,我後來把這個方法替換成了window.opener.location.href=window.opener.location.href;
就不會出現那樣的問題了。

 

       window.opener其實是指本視窗的父視窗,比如,one.jsp 通過popupwindow開啟了two.jsp,哪麼在two.jsp裡面的window.opener就是指one.jsp,所以在two.jsp裡面完全可以用window.opener調用任何一個one.jsp裡面的方法,實現one.jsp和two.jsp的互動。

 

 

       注意:window.opener.location.href只是一個連結,如果想實現父視窗的提交就要調用window.opener.action="" 和window.opener.submit(); 方法,但是不幸的是這段代碼在firefox下不能運行,解決的辦法為在父視窗中寫一個提交的function在子視窗中通過window.opener.functionname()調用。

       通常在使用window.opener的時候要去判斷父視窗的狀態,如果父視窗被關閉或者更新,就會出錯,解決辦法是加上如下的驗證if(window.opener && !window.opener.closed)

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.