4 votes

Raison technique pour laquelle Safari 9 ne prend pas en charge les sites modernes

J'utilise toujours Mac OS X 10.9.5 (Mavericks) sur l'une de mes machines afin de pouvoir exécuter les anciennes versions des logiciels Adobe, etc. Je préfère utiliser Safari comme navigateur web car il est conçu pour le Mac, mais la version finale de Safari pour Mavericks (v. 9.1.3) ne supporte plus certains sites.

Il s'agit souvent de cas où un dispositif circulaire incomplet tourne en rond sans charger ce qu'il essaie de charger. Cela ne ressemble pas à un curseur "occupé" de Mac et n'est pas spécifique à un navigateur. Un exemple (essayant de charger une série de références en réponse à ma requête) est montré ci-dessous (à partir de www.flybase.org) dans un contour rouge que j'ai ajouté :

enter image description here

Le problème semble provenir de certains fichiers JavaScript, car la page d'erreur dans le menu Développer affiche ce qui suit :

enter image description here

Je peux contourner ce problème en utilisant Firefox, mais, en tant que concepteur web amateur, je suis curieux de savoir quelle est la technologie web - vraisemblablement plus récente - que Safari 9 ne prend pas en charge.

7voto

grg Points 181593

Safari 9.1 a été publié en 2016, soit il y a plus de 3 ans, et ne prend pas en charge l'option lot des technologies web populaires qui ont été développées depuis.

Polyfills existent pour certaines technologies, avec Safari 9 est à peine sur la liste de certains polyfills mais de nombreux développeurs ne s'attendent pas à supporter un navigateur dépourvu d'ES2015. 1 support (vous ne pouvez même pas déclarer une variable avec let dans Safari 9).

caniuse.com fournit une comparaison détaillée des navigateurs Web en fonction de leurs caractéristiques, notamment Safari 9 vs Safari 12.1 . Compte tenu de la capture d'écran ajoutée à votre message d'erreur, le JavaScript exécuté ne peut pas trouver 'fetch', qui est probablement une référence à l'interface de l'application API de récupération une API cruciale pour obtenir des ressources d'ailleurs. L'API Fetch est d'abord supportée dans Safari 10.1 .

Si le développeur web n'a pas inclus de polyfill pour Safari 9, il est peut-être possible d'injecter soi-même le polyfill pour certaines fonctionnalités de la technologie web, mais cette situation ne fera qu'empirer. Je comprends le besoin potentiel d'exécuter des logiciels plus anciens, mais une telle utilisation devrait être limitée à une machine virtuelle, en s'assurant que le système d'exploitation hôte est sécurisé et en exécutant un navigateur web sécurisé capable de comprendre les technologies présentes sur vos sites préférés.

1 L'ES2015 (ou ECMAScript 2015) est une spécification du langage de script créée pour normaliser JavaScript en vue de son utilisation par plusieurs navigateurs, applications et périphériques. Cette norme est mise à jour chaque année en juin et nous en sommes maintenant à la norme ECMAScript 2019. Pour plus d'informations, consultez Versions de JavaScript . Cette page fournit un résumé des éditions d'ECMAScript et en faisant défiler la page vers le bas, vous pouvez voir une répartition de la prise en charge des navigateurs.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X