<script>
function window.onbeforeunload()
{
  if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)
  {
    return '是否真的退出?'
  }
}
</script>

解决方案 »

  1.   

    多謝樓上二位.
    To  Estyle(靳田):
        在你的onbeforeunload中的return '是否真的退出?'和returnValue的操作是同樣的意思.
    但是,這無法阻止接下來的確定和取消對話框. 我是想實現這對的取消按鈕操作後 的所有視窗
    都保持願樣的狀態.
      

  2.   

    呵呵,我不明白你的意思了。
    上面的代码,可以实现用ALT+F4和点关闭按钮的时候弹出一个确认对话框。
    取消以后,是“保持願樣的狀態”的嘛!
      

  3.   

    是喔..
       我沒把事情說清楚,不好意思.
       其實在onbeforeunload裡面寫,最主要是我的表單可以在這裡執行submit來提交.由於在頁面對數據庫操作的時候,用戶不按正規操作導致數據遺失,這時候需要提交表單,告訴我的java 程序執行適當的處理才行..而這個對話框卻發生在onbeforeunload函數執行之後才彈出來.
    點確定以後將走onunload.但是表單無法在onunload裡面實現提交.(因為我的程序使得頁面發生替換)...換句話說,我的表單提交需要在returnValue引起的對話框表達確定之後觸發.但是我無法得到這個確定所返回的值.
       我是在onbeforeunload裡面做了一個dialog讓用戶點確定或者取消.這樣,我就可以使得submit能在裡面正常的發生反應.為了不和後面的returnValue引起的對話框重複.所以,想要實現類似於這個returnValue之後的取消按鈕的功能,保持數據原樣.