Je travaille actuellement sur un certain JS. Cela fonctionne bien dans tous les navigateurs, à l'exception de Microsoft Edge. Le problème est assez simple: au début de l'un de mes scripts, je déclare une variable comme ceci:
var something = localStorage.getItem('something');
Quoi qu'il en soit, quelque chose n'existe pas encore, mais l'idée est que cela peut être utilisé comme référence dans une fonction ultérieure. Firefox, Chrome, Opera et Safari n'ont pas de problème avec cela, mais Edge le fait, donc ma question est, est-ce une solution rapide? Ou vais-je devoir réécrire tout mon script à cause d'Edge?
C'est l'erreur que Edge lance en passant.
Unable to get property 'getItem' of undefined or null reference
Merci!
Stockage local ne fonctionnait pas pour les fichiers locaux dans IE9 , donc j'imagine que c'est toujours le cas dans MS Edge.
Je viens de le tester dans Edge avec un serveur sur localhost
et votre ligne de code fonctionnait très bien:
> var something = localStorage.getItem('something');
> undefined
Il est possible qu'il s'agissait d'un problème de sécurité dans les versions antérieures de IE et qu'il n'ait jamais été mis à jour lors du développement du navigateur.
Cependant, il semble que localStorage et sessionStorage ne fonctionnent toujours pas dans Edge pour les fichiers HTML accessibles à l'aide du protocole 'file: //'.
Pourriez-vous s'il vous plaît essayer
var something = window.localStorage.getItem('something');
Pourriez-vous également vérifier si vous avez sélectionné "Activer le stockage DOM"? Vous pouvez le trouver sous: Options Internet -> onglet Avancé -> zone de groupe Sécurité
De plus, si vous exécutez votre page à partir d'un système de fichiers local, localStorage ne fonctionne pas sur IE, vous devez l'exécuter à partir du serveur Web.
Voici un lien qui fournit plus d'informations sur la façon de l'activer