窗口位置
用來確定或修改window對象位置的屬性和方法如下:
方法 | 支持的瀏覽器 |
---|---|
screenLeft 、screenTop |
IE、Safari、Opera 和 Chrome |
screenX 、screenY |
Firefox、Safari 和 Chrome |
<script>
var leftPos = (typeof window.screenLeft == "number") ?
window.screenLeft : window.screenX;
var topPos = (typeof window.screenTop == "number") ?
window.screenTop : window.screenY;
alert("Left: " + leftPos);
alert("Top: " + topPos);
</script>
利用二元操作符首先確定screenLeft
和screenTop
屬性是否存在,如果存在則去取這兩個屬性的值。如果不存在,則取screenX
和screenY
的值。
注意:
- 在IE、Opera中,screenLeft和screenTop中保存的是從屏幕左邊和上邊到由window對象表示的頁面可見區域的距離,即窗口緊貼屏幕上端時,y軸座標爲0
- 在Chrome、Firefox和Safari中,screenY或screenTop中保存的是整個瀏覽器窗口相對於屏幕的座標值,即在窗口的y軸座標爲0時返回0
- Firefox、Safari和Chrome始終返回頁面中每個框架的
top.screenX
和top.screenY
,即頁面被設置外邊距發生偏移的時候,相對於window對象使用top.screenX
和top.screenY
每次也會返回相同的值 - IE和Opera則會給出框架相對於屏幕邊界的精確座標值
moveTo()
和moveBy()
moveTo()
:接收的參數是新位置的x和y座標moveBy()
:接收的參數是垂直方向上移動的像素數
例:
// 將窗口移動到屏幕左上角
window.moveTo(0,0)
// 將窗口向下移動100像素
window.moveBy(0,100)