2009-09-01 165 views
1

這與問題「Bookmarklet behind elements」有關。提交表單後關閉小書籤

我希望在表單提交後自行關閉iframe,或者如果不可行,請使用iframe添加關閉按鈕以關閉它。我此刻的書籤是

javascript:(function(){var iFrame=document.createElement('IFRAME');iFrame.src='http://www.yeongbing.com/testform/dd-formmailer/dd-formmailer.php';iFrame.style.cssText='display:block;position:absolute;top:5%;left:60%;width:40%;height:51%;overflow:hidden;';document.body.insertBefore(iFrame,document.body.firstChild);})(); 

我試圖提到here的方法,但似乎無法工作。有什麼建議麼?

+0

是在iframe的形式? – geowa4 2009-09-01 17:33:55

回答

1

下面介紹如何從「關閉窗口」按鈕關閉iframe。

首先,給你的iframe添加一個id「iFrame.id ='foo';」你的書籤腳本的末尾:

javascript:(function(){var iFrame=document.createElement('IFRAME');iFrame.src='test2.html';iFrame.style.cssText='display:block;position:absolute;top:5%;left:60%;width:40%;height:51%;overflow:hidden;';document.body.insertBefore(iFrame,document.body.firstChild);iFrame.id='foo';})(); 

然後,在你的iframe的來源,改變

<input type="button" onclick=window.close() value="Close Window"/> 

<input type="button" onclick="parent.document.body.removeChild(parent.document.getElementById('foo'));" value="Close Window"/> 
+0

感謝您的輸入。但該按鈕既不在頁面本身也不在iframe上工作。你知道爲什麼onclick = window.close()本身不起作用嗎?我認爲無論網頁內容如何,​​都應該關閉窗口。 – qwertyuu 2009-09-02 01:15:53

+0

我測試了我的解決方案,它的工作原理。該按鈕位於iframe頁面中,就像您已經在http://www.yeongbing.com/testform/dd-formmailer/dd-formmailer.php中一樣。 – Emmett 2009-09-02 06:07:53

+0

非常奇怪。我在Safari和Firefox中嘗試它,並且它們在兩者中都不起作用。我會檢查我是否將其複製錯誤。謝謝 – qwertyuu 2009-09-02 12:44:19