Я хочу, чтобы на некоторых страницах можно было отключить «history.go (-1)». Я думаю, есть ли способ очистить объект истории Javascript. Идеи? «history.go()» не слишком хорошо функционирует в некоторых браузерах, таких как IE. Это правда? Любое решение для этого?Отключить «history.go (-1)» на определенных страницах
ответ
Вы можете переписан метод go
, но он не получает вас много
history.go = function(){};
Это отключит все виды применения history.go
, а не только тогда, когда вы проходите -1
.
И, как указывали другие, это не мешает пользователю использовать кнопку «Назад» в своем браузере.
Вы не можете изменить настройки браузера. Если бы вы могли, это был бы хаос, поскольку вредоносное ПО попыталось бы взять на себя всю историю.
Если вы пытаетесь отключить кнопку BACK браузера, это просто невозможно. Хотели бы вы, если бы веб-сайты могли обходиться без функций браузера?
Возможно, пользователям очень сложно вернуться, если они включены в JavaScript. Я использовал некоторые сайты, подобные этому. И я ненавижу, когда они это делают. – Andy
Да, я знаю, что вы имеете в виду. Обычно щелчок назад несколько раз быстро получает то, что вы хотите. Я предполагаю, что theres промежуточная страница, которая возвращает соответствующий код javascript или HTTP для пересылки браузера на –
Лучшее, что вы можете сделать, чтобы «отключить» историю, - это открыть вашу страницу в новом окне, которое не будет иметь истории. Страницы, открытые в новом окне, не имеют кнопки возврата назад, а history.go (-1) ничего не сделает.
В конце этого вы ничего не сможете (или должны) сделать.
Пересмотрено, чтобы сделать импликацию явной. Я думал, что я проясняюсь, но, видимо, я не был.
Ctrl-H открывает историю в любом окне –
@ m.edmondson: Я знаю об этом, но страницы открываются в новом в окне нет кнопки назад, а history.go (-1) ничего не сделает. – Robusto
Хорошо, если вы отредактируете свой ответ, я отменит свой голос –
У вас есть два варианта.
Загрузить страницы с запросом на отправку, это не позволит пользователям использовать обратную кнопку, поскольку вы можете уловить перезагрузку на стороне сервера. (Вам нужно обернуть все гиперссылки с помощью js, хотя и немного работать, и решение довольно уродливое.)
Используйте DOM для загрузки содержимого на страницу. История не сможет отступить. (или я ошибаюсь здесь: - |)
более подробно описывают вашу проблему, вероятно, есть лучшие решения, где вам нужно идти.
Я не понимаю пункт 1, вы можете уточнить? –
Поместите это в общий заголовок страницы:
<body onLoad="history.forward()">
Он всегда будет заставлять пользователя до самой последней страницы они посетили на вашем сайте.
Причиной для голосования было бы неплохо. –
Это некрасиво, но может работать:
$(document).load(function(){
document.location.href = document.location.href + "#";
setInterval(function(){
if (window.location.hash != '#')
document.location.href = document.location.href + "#";
}, 100);
});
тьфу!
Desmond,
Мой босс не хочет, чтобы кнопка назад, чтобы работать на посадку page.I знаю, что это глупо, но что я могу сделать.
Как использовать страницу по умолчанию, (index.php или что-то еще), чтобы указать вперед.
index.php:
header('location:start.html');
//or likewise with js,
document.location = 'start.html';
start.html:
my real start
, как пользователь нажимает кнопку назад, index.php будет заново переадресацию.
приветствия,
Спасибо за все ответы. После двухдневного жонглирования я решил это решение. Я использую PHP для вывода класса в тег body, если это текущая страница является главной страницей. Что-то вроде
<body class='front'>
, а затем использовать JQuery, чтобы включить/выключить "history.go (X)" на лету.
$(document).ready(){
if($('body.front').length>0){
$('#backbutton').click(function(){ window.history.back(); });
}else{
$('#backbutton').unbind('click');
}
}
На самом деле проект, который я работал над требуют сайта внутри фрейма, чтобы отключить элемент, который вызывает обратную кнопку родительского окна. Js становится:
var backbutton=parent.window.getElementById('#backbutton');
$(document).ready(){
if($('body.front').length>0){
$(backbutton).click(function(){ window.history.back(); });
}else{
$(backbutton).unbind('click');
}
}
- 1. Отключить ScriptManager на определенных страницах
- 2. Отключить файлы cookie на определенных страницах PHP
- 3. WP отключить плагин на определенных страницах
- 4. Bootstrap - отключить отзывчивость на определенных страницах
- 5. Android WebView - history.go (-1)
- 6. history.go (-1) и проблема UpdatePanel
- 7. Передача переменных в history.go (-1)
- 8. Как отключить перенаправление для пользователей без регистрации на определенных страницах?
- 9. Как скрыть полосу прокрутки на определенных страницах, кроме страницы 1?
- 10. Включите Adsense на определенных страницах
- 11. MoinMoin ACL на определенных страницах
- 12. .htaccess SSL на определенных страницах
- 13. jQuery сбой на определенных страницах
- 14. fullpage.js только на определенных страницах
- 15. history.go (-1) не загружает мою другую функцию
- 16. Имитация history.go (-1) с JavaScript/JQuery
- 17. Javascript/jQuery: Любое событие для history.go (-1)?
- 18. сохранить данные формы при использовании history.go (-1)
- 19. Что эквивалентно history.go (-1); в mozilla
- 20. Выполнить код только на определенных страницах?
- 21. Выполнение определенных функций JavaScript/jQuery на определенных страницах
- 22. Rails - ссылки не работают на определенных страницах?
- 23. history.go (-1) вернуться не работает в Chrome
- 24. Альтернатива history.go (-1) для FireFox и Safari
- 25. Функция jQuery только на определенных страницах
- 26. CSS div изменяет позицию на определенных страницах
- 27. Рекомендации по выполнению определенных сценариев JS на определенных страницах
- 28. CSS3 анимация только на определенных страницах
- 29. Оказание на определенных страницах через файл application.html.erb?
- 30. Расширение Chrome - CSS беспорядок на определенных страницах
Что вы достигли моего отключения этого? Пользователь может просто нажать кнопку возврата –
У меня есть
Дьявол или что-то в этом роде? Если пользователь не хочет находиться на вашем сайте, не пытайтесь его принуждать! – user359996