方法1、
是在在被彈出的頁面中給body加入以下事件處理即可
<body onblur="this.focus();" onload="this.focus();">
每當表單失去焦點時則立即重新擷取焦點,快顯視窗後面的頁面上的組件無法被點擊。
此種方法缺點就是頁面無法輸入內容。
方法2、使用showModalDialog
範例程式碼:
<script language="javascript" type="text/javascript">
function OpenTopDialog()
{
window.showModalDialog('Show.aspx',null,'resizable:yes;scroll:yes;status:no;dialogWidth:800px; dialogHeight:600px;center=yes;help=no');
}
</script>
問題1:
開啟showModalDialog後,關閉時會彈出空白頁。
解決方案為:在開啟 showModalDialog的頁面的Head標記中加上<base target="_self">。
問題2:
showModalDialog中連結會在新視窗中開啟。
解決方案為:
開啟showModalDialog的頁面上加上<base target="_parent">
showModalDialog使用方法如下:
vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures])
vReturnValue = window.showModelessDialog(sURL [, vArguments] [, sFeatures])
參數說明:
sURL
必選參數,類型:字串。用來指定對話方塊要顯示的文檔的URL。
vArguments
選擇性參數,類型:變體。用來向對話方塊傳遞參數。傳遞的參數類型不限,包括數組等。對話方塊通過window.dialogArguments來取得傳遞進來的參數。
sFeatures
選擇性參數,類型:字串。用來描述對話方塊的外觀等資訊,可以使用以下的一個或幾個,用分號“;”隔開。
dialogHeight 對話方塊高度,不小於100px,IE4中dialogHeight 和 dialogWidth 預設的單位是em,而IE5中是px,為方便其見,在定義modal方式的對話方塊時,用px做單位。
dialogWidth: 對話方塊寬度。
dialogLeft: 距離案頭左的距離。
dialogTop: 離案頭上的距離。
center: {yes | no | 1 | 0 }:視窗是否置中,預設yes,但仍可以指定高度和寬度。
help: {yes | no | 1 | 0 }:是否顯示協助按鈕,預設yes。
resizable: {yes | no | 1 | 0 } [IE5+]:是否可被改變大小。預設no。
status: {yes | no | 1 | 0 } [IE5+]:是否顯示狀態列。預設為yes[ Modeless]或no[Modal]。
scroll:{ yes | no | 1 | 0 | on | off }:指明對話方塊是否顯示捲軸。預設為yes。
還有幾個屬性是用在HTA中的,在一般的網頁中一般不使用。
dialogHide:{ yes | no | 1 | 0 | on | off }:在列印或者預覽列印時對話方塊是否隱藏。預設為no。
edge:{ sunken | raised }:指明對話方塊的邊框樣式。預設為raised。
unadorned:{ yes | no | 1 | 0 | on | off }:預設為no。