Как запретить переопределение функций в javascript?

У меня есть веб-страница с таким javascript:

<script>
window.onblur = function(){
    alert("Don't leave this page");
    document.location.href = "show_results.php";
}
var sec = 15;
tim = function(){
    sec--;
    document.getElementById("mytimer").innerHTML=sec;
    if(!sec) document.location.href = "show_results.php";
}
stop_timer=function(){
    clearInterval(timer);
}
start_timer=function(){
    timer = window.setInterval(tim,1000);
}
</script>

Итак, я разрешаю смотреть свою страницу в течение 15 секунд и запрещаю покидать ее, но, например, с помощью Tampermonkey пользователи могут переопределить мои функции. Они могут написать что-то вроде:

window.onblur = function(){}
function f(){
    sec=16;
    setTimeout(f,1000);
}
f();

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

P.S.: Эта страница является викториной, и я не хочу, чтобы пользователи могли искать правильный ответ через Интернет.


person aangairbender    schedule 13.03.2016    source источник
comment
Это кажется таким раздражающим, что удивительно, что кто-то вообще заходит на ваш сайт? Короткий ответ: вы все равно не можете помешать пользователю уйти, так зачем раздражаться и пытаться с глупыми предупреждениями.   -  person adeneo    schedule 13.03.2016
comment
Это просто пример. Это может быть щелчок для какой-то кнопки, а не размытие для окна.   -  person aangairbender    schedule 13.03.2016
comment
Вы ничего не можете сделать, чтобы запретить пользователям отключать или изменять ваши сценарии. Скрипты работают на их компьютере, и они имеют над ними полный контроль.   -  person JJJ    schedule 13.03.2016
comment
addEventListener существует, чтобы прослушиватели событий не были перезаписаны и могли быть удалены только с помощью removeEventListener с функцией, используемой в качестве прослушивателя. Но это только защитит ваш код от конфликтов с другими скриптами. [...] This page is a quiz and I don't want to allow users to search a correct answer via Internet.[...] предотвратить это невозможно.   -  person t.niese    schedule 13.03.2016