2010-02-24 27 views
12

onclick="history.go(-1);return false;"用戶可以導航到後臺頁面。但是,如果我想在確定方法將用戶帶到後面之前進行確認。我會怎麼做?如何設置JavaScript重定向發送用戶到後臺頁面?看代碼

我認爲這可以通過做下面的事情來實現,但我不知道如何將用戶重定向到後臺頁面?

$('.clickme').click(function() { 
    if(confirm("Are you sure you want to navigate away from this page?")) 
    { 
     //window.close(); 
     // how to redirect to history.go(-1) ?? 
    }   
    return false; 
}); 

UPDATE

也就是有什麼辦法可以檢查是否歷史中有一些值或爲空?所以我可以提醒用戶如果是空的?

回答

29

這是因爲你覺得這是很簡單的:

$('.clickme').click(function() { 
    if(confirm("Are you sure you want to navigate away from this page?")) 
    { 
     history.go(-1); 
    }   
    return false; 
}); 
+0

哦,我應該先問嘗試過。讓我嘗試。 – user187580 2010-02-24 14:04:54

+0

是否有任何方法來檢查歷史中是否存在「某物」..即不是空的等? – user187580 2010-02-24 14:06:32

+0

存在history.previous屬性,但由於JSRef指出它*需要UniversalBrowserRead特權。如果你沒有這個特權,它就沒有價值。有關安全性的信息,請參閱客戶端JavaScript指南。* – anddoutoi 2010-02-24 14:20:38

9

試試這個:

if(confirm("Are you sure you want to navigate away from this page?")) 
    { 
     history.back(); 
    }  
+0

它可以放在onclick =」返回確認('確認消息')「; ?? – user187580 2010-02-24 14:08:54

+0

你試過了嗎? – 2010-02-24 14:11:15

+0

是的,它可以放在那裏,試試看。 – Sarfraz 2010-02-24 14:16:56

3
$('.clickme').click(function() { 
     if(history.length != 0) 
     { 
      if(confirm("Are you sure you want to navigate away from this page?")) 
      { 
       history.go(-1); 
      } 
     return false; 
     } 
     alert("No history found"); 
     return false; 
}); 
1
<script type="text/javascript" language="javascript"> 

function goBack() 
{ 
window.history.back() 
} 

window.onkeyup = function (e) 
{ 
if (e.keyCode == 27) window.history.back(); 
} 
</script> 

加入上面的代碼頁的頭部部分。在這裏,每當用戶按Esc按鈕,那麼他將被重定向到前一個查看頁面,如果我們想要在後退按鈕上添加此邏輯,請在點擊事件時調用goback()

1
$('.clickme').click(function() { 
    if(history.length != 0) 
     { 
      if(confirm("Are you sure you want to navigate away from this page?")) 
      { 
       document.location.replace(document.referrer) 
      } 
     return false; 
     } 
     alert("No history found"); 
     return false; 
}); 

(此代碼大量借鑑Dodswarm的答案。)

相關問題