2010-11-08 175 views
0

我知道這樣的一些事情;如何防止用戶移動頁面?

<script> 
function out() { 
    alert('No, stay here.'); 
    //What to do?... 
} 
</script> 

<body onUnload="out()"> 
<input /> 
</body> 

我從其他社區

<script> 
function out() { 
    alert('No, stay here.'); 
    location.href='thisPage.html'; 
} 

一些響應但是,這將重新加載頁面。我想阻止用戶在不重新加載頁面的情況下移動頁面。謝謝

+0

這可能只是我,但我真的不喜歡試圖讓我沒有違揹我的意願頁和我經常(always_?)剛剛結束對執行此操作的公共場所的瀏覽器。我甚至有一對夫婦,我甚至已經阻止,甚至擺在首位。這就是說,在一個私人網站進行驗證,這不是一個大問題。 – 2010-11-08 04:53:32

回答

2

可以使用onbeforeunload事件和採取的步驟任何你想要:

window.onbeforeunload = function(){ 
    // whatever you want to do now 
}; 

通過這種方式,您可以將用戶重定向到其他頁面,如果他們嘗試從當前頁面移開或您想在其中執行任何操作。

0

嘗試return false;,而不是location.href='thisPage.html';

0

而是沒有返回,加

return false; 

到最後,應該工作

+0

我試過'返回false;'但它不起作用... – Deckard 2010-11-08 04:36:06

1

千萬不要這樣做:用戶想離開這個頁面是有原因的,所以不要強迫他/她留下來。更好的選擇是在離開頁面之前使用onbeforeunload來要求確認。

+0

啊因爲這是一個連續的輸入過程。所以用戶不能離開頁面,直到整個輸入過程完成。 – Deckard 2010-11-08 04:37:40

0

:)

function out() { 
    alert('No, stay here.'); 
    return false; 
}