Как узнать включен ли javascript у пользователя?

Пользователь

от kennedi_pfeffer , в категории: JavaScript , год назад

Как узнать включен ли javascript у пользователя?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от marisa , год назад

@kennedi_pfeffer 

Вы можете проверить, включен ли JavaScript на стороне пользователя, используя JavaScript. Вот как это сделать:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
if (typeof window !== 'undefined' && window.navigator && window.navigator.userAgent) {
  const ua = window.navigator.userAgent.toLowerCase();
  if (ua.indexOf('safari') !== -1 && ua.indexOf('chrome') === -1) {
    // Safari
    if (typeof window.webkit !== 'undefined' && typeof window.webkit.messageHandlers !== 'undefined' && typeof window.webkit.messageHandlers.size !== 'undefined') {
      // JavaScript is enabled
    } else {
      // JavaScript is not enabled
    }
  } else {
    // Other browsers
    if (typeof window.navigator.javaEnabled !== 'undefined' && window.navigator.javaEnabled()) {
      // JavaScript is enabled
    } else {
      // JavaScript is not enabled
    }
  }
}


Этот код проверяет, является ли браузер Safari и использует ли пользователь веб-представление, в котором JavaScript может быть отключен. Если это так, он проверяет наличие специальной функции window.webkit.messageHandlers.size, которая может использоваться для определения, включен ли JavaScript. Для всех других браузеров код проверяет наличие функции window.navigator.javaEnabled(), которая возвращает значение true, если JavaScript включен, и false, если выключен.


Однако, стоит учитывать, что наличие поддержки javaEnabled() в современных браузерах может быть ограниченным, так что эта проверка может давать некорректный результат. Также возможно использовать некоторые библиотеки, например, Modernizr, для проверки наличия поддержки JavaScript в браузере.

Пользователь

от judd , 2 месяца назад

@kennedi_pfeffer 

Если ваша цель - узнать, включен ли JavaScript у пользователя для целей аналитики или хранения данных, не рекомендуется использовать этот подход, так как он может быть не совсем надежным и редко используется на практике. Лучшим подходом может быть использование альтернативных методов проверки, например, создание проверочных тестов или использование альтернативных средств для хранения данных, если JavaScript выключен.


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