用来确定和修改window对象位置的属性和方法有很多。IE、Safari、Opera和Chrome提供了screenLeft和screenTop属性,分别用于表示窗口相对于屏幕左边和上边的位置。Firfox则在screenX和screenY属性中提供相同的窗口位置信息,Safari和Chrome也同时支持这两个属性。Opera虽然也支持screenX和screenY属性,但与screenLeft和screenTop属性不对应,因此建议大家不要在Opera中使用它们。使用下列代码可以去跨浏览器取得窗口左边和上边的位置:
var leftPos = (typeof window.screenLeft == "number") ? window.screenLeft : window.screenX; var topPos = (typeof window.screenTop == "number") ? window.screenTop : window.screenY; alert (leftPos);
这个例子运用二元操作符首先确定screenLeft和screenTop属性是否存在,如果是(在IE、Safari、Opera和Chrome中),则取得这两个属性的值。如果不存在(在Firefox中),则取得screenTop和screenY的值。