Cet article analyse certaines relations entre le hachage et l'ICO dans JS. Partagez-le pour votre référence. Les détails sont les suivants:
Un test récent a soulevé un bogue, affirmant que l'ICO dans certaines pages ne s'affiche pas, de sorte que la cause de ce problème a été étudiée.
Tout d'abord, assurez-vous que le lien de la page a introduit Favicon.ico. Après vérification, il a été constaté que l'emplacement.hash en js a fait que l'ICO ne s'affiche pas. La raison en est que l'emplacement.hash est défini lorsque l'ICO n'est pas chargé, ce qui fait que l'ICO ne s'affiche pas.
Location.hash est souvent utilisé dans les projets et est utilisé pour le positionnement de l'URL, tel que "# job-manage" dans http://h.liepin.com/#job-manage.
La solution est la suivante (prendre le projet actuel comme exemple, et la situation spécifique est analysée):
Points du projet:
1. Le contenu de la page est envoyé en cliquant sur le menu pour envoyer une demande AJAX;
2. Le contenu affiché sur la page est l'événement de clic par défaut d'un menu;
3. Set Location.hash est un événement de clic via un menu.
Cela a un problème. Lors de la saisie de la page, l'événement de clic menu est exécuté, donc l'emplacement.hash est défini.
Vous pouvez le faire en définissant une variable pour vous assurer que l'emplacement.hash n'est pas défini lorsque vous entrez pour la première fois la page.
$ (function () {$ ('. menu a'). cliquez (fonction (événement, hashboolean) {var that = $ (this); $ .ajax ({url: '', type: 'get', data: {}, cache: false, dataType: 'json', succès: fonction (data) {if (data.flag == 1) {if (! [id ', that.attr (' data-id ').J'espère que cet article sera utile à la programmation JavaScript de tous.