Люди отключают javascript в своем браузере? 😱 Дайте им повод поплакать!
Знаете ли вы, что два процента людей, пользующихся Интернетом, отключают JavaScript в своих браузерах? Это удивительная величина.
Угадай, почему? Если вы веб-разработчик, использующий react, jquery или какую-либо другую js-библиотеку, они выйдут из строя. Жалко? Она даже не запустится! Если вы используете react на стороне клиента для простого приложения, она также не запустится.
В этой статье я собираюсь показать вам некоторые красивые техники, которые заставят включить javascript навсегда.
1. Тег
Этот тег будет отображать html-документ поверх существующего, если javascript отключен. Все, что вам нужно сделать, это поместить его где-нибудь в свой html. Вы можете хранить не только текст, но и метатеги, заголовки, тела HTML и многое другое!
<noscript>
<h1>Only Monkeys don't use javascript in their browser!</h1>
</noscript>
Что-то, что я нашел полезным в stackoverflow, - это перенаправление их на другую страницу вашего сайта.
<noscript>
<meta http-equiv="refresh" content="0;URL=/monkeysdontusejs">
</noscript>
Совет от профессионала: храните огромные гифки, занимающие почти весь размер экрана, в теге noscript или в ролике с рикроллом.
2. Прак с регистратором IP
Вы по-прежнему можете регистрировать IP-адреса пользователей, даже если клиент живет с отключенным javascript.
Я использовал для этого Next.js, так как он выполняет рендеринг на стороне сервера и может собирать некоторые интересные реквизиты из бэкэнда и передавать их во фронтенд за вас.
Что я сделал, так это использовал пакет npm request-ip
и передал его как опору из бэкэнда с помощью getServerSideProps
.
import requestIp from 'request-ip'
...
export async function getServerSideProps(ctx){
return {
props: {
addr: requestIp.getClientIp(ctx.req)
}
}
}
Вот пример: https://next-gen-noscript-killer.ironcladdev.repl.co/
И код: https://replit.com/@IroncladDev/next-gen-noscript-killer
И я обещаю, что не регистрирую и не краду IP-адреса. Я даже не знаю, что с ним делать, если он у меня есть.
Ну что с этим делать? Может быть, заявите что-нибудь о том, что все еще можно регистрировать IP-адреса, что не имеет значения, или что отключение javascript является уязвимостью безопасности.
3. Визуализируйте весь свой сайт с помощью javascript.
Это заставит их чувствовать себя обделенными. Даже если у клиента отключен javascript, он включит его для нескольких сайтов, которым он нужен.
Это не рекомендуется для рабочих сайтов, но работает хорошо.
Если вы не хотите этого делать, возможно, визуализируйте свой CSS с помощью javascript или сделайте так, чтобы они не могли взаимодействовать с какими-либо функциями apis/backend.