在頁面中點擊超級鏈接用window.open函數(shù)打開一個新的窗口時,原來的頁面也刷新了,只有一個含有[object]的空白頁面
原因:在超級鏈接的href中調(diào)用window.open函數(shù)時當(dāng)前頁面也會刷新為該函數(shù)的返回值,因為返回一個窗口對象,所以只能顯示[object]
解決方法:使用javascript的void函數(shù),該函數(shù)將使得任何被使用的函數(shù)返回undefined值,該值將不被瀏覽器顯示
<a href="javascript:void(window.open ('${pageContext.request.contextPath }/', 'newwindow', 'height=100; width=400; toolbar= no; menubar=no; scrollbars=no; resizable=no; location=no; status=no;top=100;left=300'))" >打開一個新窗口</a>
注意:
1.在第三個參數(shù)中要用“,”來做為分隔符,否則后面的各個參數(shù)將不管用
2.任何沒有返回值的函數(shù)都返回undefined
具體總結(jié)的各個屬性參數(shù)如下:
window = object.open([URL ][, name ][, features ][, replace]]]])
URL:新窗口的URL地址
name:新窗口的名稱,可以為空
featurse:屬性控制字符串,在此控制窗口的各種屬性,屬性之間以逗號隔開。
fullscreen= { yes/no/1/0 } 是否全屏,默認(rèn)no
channelmode= { yes/no/1/0 } 是否顯示頻道欄,默認(rèn)no
toolbar= { yes/no/1/0 } 是否顯示工具條,默認(rèn)no
location= { yes/no/1/0 } 是否顯示地址欄,默認(rèn)no
directories = { yes/no/1/0 } 是否顯示轉(zhuǎn)向按鈕,默認(rèn)no
status= { yes/no/1/0 } 是否顯示窗口狀態(tài)條,默認(rèn)no
menubar= { yes/no/1/0 } 是否顯示菜單,默認(rèn)no
scrollbars= { yes/no/1/0 } 是否顯示滾動條,默認(rèn)yes
resizable= { yes/no/1/0 } 是否窗口可調(diào)整大小,默認(rèn)no
width=number 窗口寬度(像素單位)
height=number 窗口高度(像素單位)
top=number 窗口離屏幕頂部距離(像素單位)
left=number 窗口離屏幕左邊距離(像素單位)
網(wǎng)頁可見區(qū)域?qū)?nbsp; document.body.clientWidth
網(wǎng)頁可見區(qū)域高 document.body.clientHeight
網(wǎng)頁可見區(qū)域?qū)?包括邊線的寬) document.body.offsetWidth
網(wǎng)頁可見區(qū)域高(包括邊線的寬) document.body.offsetHeight
網(wǎng)頁正文全文寬 document.body.scrollWidth
網(wǎng)頁正文全文高 document.body.scrollHeight
網(wǎng)頁被卷去的高 document.body.scrollTop
網(wǎng)頁被卷去的左 document.body.scrollLeft
網(wǎng)頁正文部分上 window.screenTop
網(wǎng)頁正文部分左 window.screenLeft
屏幕分辨率的高 window.screen.height
屏幕分辨率的寬 window.screen.width
屏幕可用工作區(qū)高度 window.screen.availHeight
屏幕可用工作區(qū)寬度 window.screen.availWidth
因此,要使得新打開的窗口居中的話
<a href="javascript:void(window.open ('${pageContext.request.contextPath }/', 'newwindow', 'height=100; width=400; toolbar= no; menubar=no; scrollbars=no; resizable=no; location=no; status=no;top='+(window.screen.height-100)/2+';left='+(window.screen.width-400)/2))" >打開一個新窗口</a>