recherche

Maison  >  Questions et réponses  >  le corps du texte

Définir window.name en JavaScript pour utiliser <a target='name'> plus tard à partir d'une autre page ?

Dans une fenêtre, telle que foo.example.com :

Puis dans une autre fenêtre, plus tard, par exemple bar.example.com :

GOFOO

Est-ce que cela fonctionnera ? Existe-t-il un moyen de revenir à une fenêtre qui n'était pas initialement nommée avec target='' ?

P粉821808309P粉821808309525 Il y a quelques jours639

répondre à tous(1)je répondrai

  • P粉434996845

    P粉4349968452023-09-17 22:32:37

    L'attribut name de la fenêtre peut en effet être défini en JavaScript. Cependant, cela ne fonctionne pas exactement comme vous l’imaginez.

    En HTML, l'attribut target de l'élément est utilisé pour spécifier où ouvrir le document lié. La valeur de cet attribut peut être :

    _blank : Ouvrez le document lié dans une nouvelle fenêtre ou un nouvel onglet. _self : Ouvrez le document lié dans le même cadre que lorsque vous cliquez dessus (c'est la valeur par défaut). _parent : Ouvrez le document lié dans le cadre parent. _top : Ouvrez le document lié dans tout le corps de la fenêtre. framename : ouvrez le document lié dans le cadre nommé. Par conséquent, la valeur de l’attribut target est interprétée comme le nom du cadre et non comme window.name. Ils ne sont pas directement liés.

    Cependant, window.name joue un certain rôle dans la communication entre fenêtres. Lorsque vous naviguez d'une page à une autre, window.name reste le même (même lors de la navigation entre domaines) jusqu'à ce que la fenêtre ou l'onglet soit fermé, ou que la fenêtre ou l'onglet navigue vers un domaine différent où window.name est une page effacée. Mais cela ne fonctionnera pas comme vous essayez de l'utiliser dans votre exemple.

    Il convient de noter que l'attribut window.name est principalement utilisé pour la programmation de scripts, et non comme moyen de référencer des fenêtres entre les pages via la balise .

    Ce que vous essayez de réaliser - référencer une fenêtre/un onglet existant à partir d'une autre fenêtre/un autre onglet - n'est souvent pas directement possible en raison des limitations de la politique de même origine et des restrictions sur la communication entre fenêtres pour des raisons de sécurité.

    Cependant, vous pouvez utiliser d'autres méthodes, telles que l'utilisation de localStorage, sessionStorage ou postMessage pour réaliser une certaine forme de communication entre fenêtres ou entre onglets, en fonction de vos besoins.

    répondre
    0
  • Annulerrépondre