2010-11-08 8 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_?) Просто закрыть браузер на общедоступных сайтах, которые делают это , У меня даже есть пара, которую я заблокировал, даже показывая вверх. Это, как говорится, на частном сайте с проверкой, это не огромная проблема. –

ответ

2

Вы можете использовать onbeforeunload событие и предпринять шаги, независимо от вы хотите:

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

При этом вы можете перенаправить пользователей на другую страницу, если они попытаются отойти от текущей страницы или любого действия, которое вы хотите выполнить там.

0

Попробуйте return false; вместо location.href='thisPage.html';

0

Вместо не возвращая ничего, добавьте

return false; 

до конца, который должен работать

+0

Я попробовал 'return false;' Но это не сработало ... – Deckard

1

Никогда не делайте этого: есть причина, по которой пользователь хочет покинуть страницу, поэтому не заставляйте его/ее оставаться. Лучшим вариантом было бы использовать onbeforeunload, чтобы запросить подтверждение, прежде чем покинуть страницу.

+0

А так как это условный процесс ввода. Таким образом, пользователи не могут покидать страницу до завершения всего процесса ввода. – Deckard

0

:)

function out() { 
    alert('No, stay here.'); 
    return false; 
} 
Смежные вопросы