И вряд ли кто-то будет искать именно это расширение. Других что ли мало?
Так а при чем тут расширение? Все что ли отключают js через раширение?
вряд ли кто-то будет копаться в настройках браузера для этого, расширение гораздо более функциональнее и удобнее
Когда сайты пишут, ни на какие расширения не смотрят
кто как, я например делаю так, чтобы по возможности работал базовый функционал даже при отключенных скриптах, + 1 условный процент пользователей, с отключенными скриптами никому не помешает
Рискну предположить, что вы сделали через meta тег, а не через чисто js.
Если удалить этот мета тег, как Владимир вам подсказывает, то само правило не удаляется, поэтому редиректит. Это предположение, возможно ошибаюсь.
Как по мне, я бы лучше на удобство смотрел, а не на полный охват всех посещений. Посмотрите метрику, сколько у вас на сайт заходят таких, которые выключают JS. Сомневаюсь, что таких много.
Вообще, можно попробовать обернуть мета тег от Владимира в noscript, который сработает при отключенном js. А для всех остальных оставить мой вариант исполнения на js. Но, честно сказать, не знаю будет ли это работать.
refresh, о котором речь, останавливается не при удалении тэга мета, а при вызове метода window.stop(); , удаление элемента meta я добавил "на всякий случай" , скорее всего у ТС просто джаваскрипт не выполняется по какой-то причине, который останавливает релоад, да, я тоже хотел предложить объединить с вашим кодом:
<script> let i = document.querySelector('#input'); let t = setTimeout(function(){ window.location = 'http://site.io/' }, 10000); i.oninput = function() { clearTimeout(t); } </script><noscript> <meta HTTP-EQUIV="refresh" content="15;url=http://site.io/" /></noscript>
протестировал, работает, для сайтов "по умолчанию", в расширении noscript тэги noscript разрешены
кстати, как побочный эффект использования расширения noscript - можно настроить отключение рекламы, трэкеров различных, это для тех, кто считает расширение "бесполезным" и для "параноиков"
круть! все работает!
Спасибо!
зы единственно что, даже при заполненном поле все равно происходит редирект. Но думаю сделаю 15 сек, на ввод кода это более чем достаточно
у вас получится примерно так:
<html><head><meta id="r1" http-equiv="refresh" content="10;url=https://google.com/" /></head><body>...<div id="my_form"> <form action="input_f" method="GET"> <b>желаемый код</b>, напишите в поле <input type="text" name="name3" id="name3"> <input type=submit value="искать"> </form> </div>...<script>var i = document.getElementById('name3'),r = document.getElementById('r1');i.oninput = function() { if(r!==false){ r.remove(); r=false; } window.stop();} </script>...</body>
ps: я заменил querySelector на getElementById
Я зашел в тему. Вижу тут от Вас появился весьма интересный для меня! вариант, на случай отключенных джаваскрипт. Форумчане - не спрашивайте зачем и почему )) Но для меня он действительно интереснее стандартного решения. При прочих равных. Если он так же будет стабильно работать.
ps дочитываю ветку. Да, вижу обсуждается, что в вашем коде средствами js удаляется из исходного кода мета. Я так понимаю все же вариант не рабочий (когда js у юзера отключен)?
Да неужели?! Короткая же у тебя память:
Каким образом?
<html><head><meta id="r1" http-equiv="refresh" content="10;url=http://www.google.com/" /></head><body><input id="i1" type="text"><script>var i = document.querySelector('#i1'),r = document.querySelector('#r1');i.oninput = function() { if(r!==false){ r.remove(); r=false; } window.stop();} </script></body>
Ну и где там input?