Заглушка-light для старых браузеров 
		
		
		
		Приветствую! 
	Приняла решение использовать для своих целей jQuery v3.3.1, в той версии jQuery, которая поддерживает старые браузеры слишком много костылей, которые нет ни желания, ни острой необходимости постоянно таскать с собой. Создала такую заглушку при загрузке сайта для старых браузеров: 
try {
  if ('geolocation' in navigator == false) throw e;
} catch(e) {
  document.getElementById('loading').innerHTML = '<p>The load is canceled.<br>This software needs a modern web browser.';
}
Версии браузеров, которые поддерживают свойство В IE работает, для других браузеров не было возможности протестировать. Возможно есть более подходящее для данной цели свойство? Browser Support (jQuery v3.3.1) Current Active Support Desktop Chrome: (Current - 1) and Current Edge: (Current - 1) and Current Firefox: (Current - 1) and Current, ESR Internet Explorer: 9+ Safari: (Current - 1) and Current Opera: Current Mobile Stock browser on Android 4.0+ Safari on iOS 7+  | 
	
		
 Если вам нужна проверка наличия Geolocation API, то приведённый вами способ подходит как раз. 
	В последнем издании ECMAScript был добавлен новый метод Promise.prototype.finally. Отсутствие данного метода указывает на использование старого движка JS. 
try {
    if ("finally" in Promise.prototype === false) throw e;
} catch(e) {
    document.getElementById('loading').innerHTML = '<p>The load is canceled.<br>This software needs a modern web browser.';
}
Но более правильный способ — проверять именно то, что вы хотите использовать! Я всегда буду благодарен за то, что дал нам jQuery 13 лет назад. Однако он давно исчерпал свои возможности, и, если вам не нужно поддерживать очень старые браузеры, я лично не вижу необходимости использовать его больше.  | 
	
		
 Malleys, вы читаете мои мысли, Promise - это самое первое существенное отличие в движках, просто я не знала как это записать, поэтому и обратилась за помощью, неудобно было как-то прямым текстом об этом просить. Насчет использования jQuery 3: 
	1) Нет желания и времени тестировать код во всех браузерах, потому что опасения все равно будут и если их не опровергать, то они могут перерасти в фобию, мне здоровье важней. 2) Код на jQuery все равно лаконичней и быстрее читается, но гдето можно комбинировать, например ajax 3) Лишний код (для работы с анимацией, ajax, разработчики потерли из основного исходника(третья версия), вынесли в отдельный Rise, ага, тоже бесит  | 
	
		
 Вот так в итоге сделала, потому что начальный вариант и в огнефоксе выбрасывает ошибку 
	
try {
  if (!window.Promise) throw e;
} catch(e) {
  document.getElementById('loading').innerHTML = '<p>The load is canceled.<br>This software needs a modern web browser.';
}
Rise, думаю потому и бесплатно все, что нет нормальной документации  | 
	
		
 Цитата: 
	
 Цитата: 
	
  | 
| Часовой пояс GMT +3, время: 07:06. |