window.onbeforeunload = function()
{
    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 = "请确认您的论文是否保存?您确定退出吗?如选择“是”则不保存,选择“否”则返回原页面"; 
    }
}像这种之类的 有作用
但是点 本页面的其它链接 以及刷新都会触发
大家有没有好点的呢?

解决方案 »

  1.   

    http://topic.csdn.net/t/20030303/11/1484840.html
      

  2.   

    function window.onbeforeunload() 

        if(event.clientX>document.body.clientWidth   &&   event.clientY<0||event.altKey)   
        {   
          //window.event.returnValue="这个事件不是刷新触发的");   
      if(event.clientX>360&&event.clientY<0)

    window.event.returnValue="提示:\“退出系统\”请点系统的\“安全退出\”!"; 
    }
        }
    else
    {

    }
    }刷新不触发,但是点本页面的其它链接还是触发
    环境是 apache2 + php5 其它链接的页面是被include()进来的
      

  3.   

    window.onbeforeunload=function()
    {
        return "请确认您的论文是否保存?您确定退出吗?如选择“是”则不保存,选择“否”则返回原页面";
    }
      

  4.   

    我想先确定你要的效果,到底是点其他连接后要弹出相关提示呢,还是关闭窗口时提示?如果只是前者,那其实你可以尝试另一种方式实现,推荐你用jQuery,可以一次性将页面所有连接加上onclick动作,而且可以特定某些连接要加或者不加,加了onclick后你要弹出什么都可以做了,而且这样做后,也保证了刷新时不会触发如果要关闭窗口时提示,大概也只有以上用的方法,或者放到body的onunload事件里去