Подтвердить что ты не робот

Обнаружение поддержки NPAPI в Chrome с помощью javascript

Как Google Chrome отказывается от поддержки NPAPI после сентября 2015 года. Есть ли способ для обнаружения поддержки NPAPI в хроме с использованием JavaScript, чтобы альтернатива контент будет загружаться или показывать предупреждающее сообщение для использования старой версии Chrome.

4b9b3361

Ответ 1

У вас возникла проблема, связанная с отключением NPAPI от chrome 42. То, что было сделано, было в строках этого: (похоже на)

function isJavaAvailable() {
  var javaRegex = /(Java)(\(TM\)| Deployment)/,
      plugins = navigator.plugins;
  if (navigator && plugins) {
    for (plugin in plugins){
      if(plugins.hasOwnProperty(plugin) &&
         javaRegex.exec(plugins[plugin].name)) {
        return true;
      }
    }
  }
  return false;
}

var chromeVersion = window.navigator.userAgent.match(/Chrome\/(\d+)\./);
if (chromeVersion && chromeVersion[1]) {
  if (parseInt(chromeVersion[1], 10) >= 42 && !isJavaAvailable()) {
    // do chrome-no-java-related task
    console.log('Java not available');
  }
}

Ответ 2

Из-за автоматических обновлений пользователи Chrome, как правило, используют последнюю версию; как только это произойдет, вы, вероятно, просто предположите, что пользователи Chrome не поддерживают NPAPI и служат для них альтернативным контентом.

Ответ 3

Для проверки поддержки NPAPI нет javascript api, но в качестве обходного пути я могу предложить вам проверить версию браузера Chrome.

Если версия Chrome старше старше 42, чем поддержка NPAPI, отключена. Да, с 42 и до версии 45 вы можете использовать chrome://flags/#enable-npapi, но нет способа проверить эти флаги от JS

На данный момент я думаю, это довольно актуальная информация: https://www.chromium.org/developers/npapi-deprecation?pli=1