Question :
En Javascript, accéder aux éléments en leurs identifiants utilisant la notation par points (a.method()) fonctionnent globalement dans Chrome, mais pas dans Firefox. Quel est le comportement correct selon les spécifications Web ? De plus, comment Chrome gère-t-il les ambiguïtés d'ID et les caractères spéciaux dans la traduction d'ID ?
Réponse :
Le comportement concernant l'accès global aux ID d'éléments varie en fonction de la spécification consultée. .
Les navigateurs ont historiquement adopté ce comportement pour des raisons de compatibilité, Internet Explorer l'ayant initialement introduit. Firefox le prend également en charge en mode bizarreries.
Comportement correct :
Selon la spécification HTML WHATWG, les éléments avec des identifiants doivent être accessibles globalement. Cependant, il est généralement considéré comme une mauvaise pratique de s'appuyer sur l'espace de noms global pour le référencement des éléments.
Gestion des ambiguïtés dans Chrome :
Chrome ne gère actuellement pas les ambiguïtés entre les variables globales et les éléments s'identifient bien. Si un élément avec le même ID qu'une variable globale existe, l'accès à cet élément via la variable globale peut entraîner un comportement inattendu.
Traduction de l'ID avec des caractères spéciaux :
Les caractères spéciaux dans les identifiants sont accessibles à l'aide de la méthode getElementById(). Cependant, la traduction de ces caractères dans la représentation de variable globale n'est explicitement définie dans aucune spécification.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!