2010-02-13 95 views
1

我嘗試使用下面的代碼通過表單按鈕啓動一個瀏覽器爲中心的窗口...瀏覽器窗口中心問題

HTTP://www.bbc.co.uk','testwin',」 width = 400,height = 400,left =(screen.availWidth-400)/ 2,top =(screen.availHeight-400)/ 2');返回false「> 測試按鈕

新的瀏覽器出現正確的高度和寬度,但左邊和頂部屬性被忽略,所以窗口出現左上角。

我是不是過於雄心勃勃試圖使這段代碼是否內聯?是否有任何其他語法我應該使用或應該放棄並調用一個函數(我寧願不,如果我可以避免它)?

我使用的是Firefox 3.0.17(latest ),但在IE7中發生的效果相同。

TIA, Alan Harris-Reid

+0

護理表現出一定的代碼?這將有助於獲得良好的答案。 – 2010-02-13 03:18:12

+0

其實,他確實顯示了一些代碼...只是堆棧溢出剝離出來。這是他的原始帖子,沒有它剝離:http://stackoverflow.com/revisions/c84eca9f-6fc3-4fcf-a3b7-ae690d34d38a/view-source – icktoofay 2010-02-13 04:13:42

回答

1

http://www.tek-tips.com/faqs.cfm?fid=2296解釋瞭如何去做。但我會建議使用浮動Div來代替彈出窗口阻止程序。

假設你想打開一個尺寸爲200h x 150w的窗口。通過取高度和寬度的一半(分別爲100和75),可以精確定位窗口的中心。然後用一個小數學,你可以將窗口居中。下面是它是如何做

<SCRIPT LANGUAGE="JavaScript"> 
function MyPopUpWin() { 
var iMyWidth; 
var iMyHeight; 
//half the screen width minus half the new window width (plus 5 pixel borders). 
iMyWidth = (window.screen.width/2) - (75 + 10); 
//half the screen height minus half the new window height (plus title and status bars). 
iMyHeight = (window.screen.height/2) - (100 + 50); 
//Open the window. 
var win2 = window.open("filename.htm","Window2","status=no,height=200,width=150,resizable=yes,left=" + iMyWidth + ",top=" + iMyHeight + ",screenX=" + iMyWidth + ",screenY=" + iMyHeight + ",toolbar=no,menubar=no,scrollbars=no,location=no,directories=no"); 
win2.focus(); 
} 
</SCRIPT> 

調用此函數在HTML中使用:

<A HREF="javascript:MyPopUpWin()">This is the link</a> 
+0

這很好。可惜它沒有作爲內聯onclick命令工作,但我認爲從長遠來看函數更靈活。 謝謝, Alan – 2010-02-17 23:57:44