他上面不是在 window.open() 里指明了 top=10000 的吗? 其实这个问题很好解决的:
<script language="javascript">
function window.onbeforeunload()  //author: meizz
{
  var n = window.event.screenX - window.screenLeft;
  var b = n > document.documentElement.scrollWidth-20;
  if(b && window.event.clientY < 0 || window.event.altKey)
  {
    window.event.returnValue = "";  //这里可以放置你想做的操作代码
  }
}
</script>

解决方案 »

  1.   

    楼上的,我top=10101,是怎么出来的?
    还有可以解释下var b = n > document.documentElement.scrollWidth-20?
      

  2.   

    都是坐标值 
    scrollWidth滚动条宽度  
    我晕 ~
      

  3.   

    用alert测试出的值都是10101,这个值代表什么意义???
    这个值是如何得出的,大家帮棒忙吧,是否与分辨率有关系呢?
    分不够可以加的。
      

  4.   

    为什么window.event.clientY<0,还有我的第二个问题?
      

  5.   

    <script language="javascript">
    function window.onbeforeunload()  //author: meizz
    {
      //鼠标位置离浏览器左边框的距离
      var n = window.event.screenX - window.screenLeft;
      //document.documentElement.scrollWidth:浏览器宽度,包括滚动条,即document.body.offsetWidth
      //即判断,鼠标与浏览器右边距是否小于20,若关闭时,这个距离小于20,则认为鼠标是在关闭按钮上水平区域里
      var b = n > document.documentElement.scrollWidth-20;
      //window.event.clientY判断,关闭时鼠标是否位于浏览器client区域之上(垂直区域里)
      //与b条件联合,可以粗略的判断为是否关闭时,鼠标位于关闭按钮区域
      //若按住alt键,则总提示判断
      if(b && window.event.clientY < 0 || window.event.altKey)
      {
        window.event.returnValue = "";  //这里可以放置你想做的操作代码
      }
    }
    </script>这种方式的判断依据即为离开页面时,鼠标位置是否在所拟定的关闭区域内。有个遗憾,垂直区域因为有工具条,菜单栏,故无法精确判断。10101这个值可能没台机器都不一样,这是窗口关闭时,窗口注销后抛出的一个离开值,只有ie有。不必过于认真。
      

  6.   

    谢谢楼上的,请再次问下
    http://blog.csdn.net/lovelxj/archive/2005/02/01/276890.aspx
    它判断>9000,是否表明窗口关闭时,窗口注销后抛出的一个离开值有规律呢???