8
votes

Utilisation d'identificateurs de fragments multiples dans une URL

Je me demandais si je peux utiliser plusieurs identifiants de fragments dans une URL, en quelque sorte comme ça: http://example.com/videos/index.html#videos#video_2

J'utilise le système de tabulation de JQuery Tools sur ma page Index.html, avec le plug-in Historique. L'onglet "Videos" de cette page a un lecteur vidéo Flash et une liste de vidéos dessus. En cliquant sur une vignette vidéo charge le fichier dans le lecteur.

J'aimerais qu'un visiteur soit capable de créer un signet non seulement de l'onglet #Videos, mais aussi d'une vidéo spécifique.

Suis-je totalement tort de penser que deux identifiants de fragments dans l'URL seraient la voie à la réalisation de cela?


2 commentaires

Voulez-vous simplement que le signet passe à un endroit spécifique de la page? Ou voulez-vous réellement charger la bonne vidéo quand ils ouvrent le lien?


Un hashtag est un moyen d'indiquer qu'un terme devrait être hyperliété à un moteur de recherche sur les réseaux de médias sociaux. Il reçoit le nom car il utilise un caractère de hasch pour le préfixer. S'il vous plaît ne confondez pas d'autres utilisations du caractère de hachage avec des hashtags.


4 Réponses :


6
votes

Je suis à peu près sûr qu'un lien d'ancrage double est impossible!

Vous pouvez mettre un pointeur à l'onglet correct et vidéo dans la chaîne de requête de l'URL (E.g. mysite.com/videos/index.html?tab=video&video=2) puis analyser ceci en JavaScript. Cela peut alors être bookmarked.

Cependant, je ne pouvais pas rester avec le modèle d'origine (à l'aide d'une seule lien d'ancrage # unique), puis utilisez simplement JavaScript pour trouver l'onglet que la balise est entrée et montrez donc l'onglet correct?


0 commentaires

3
votes

Non, vous ne pouvez pas utiliser plusieurs hashtags dans une URL. L'identifiant après que les caractères de hachage mènent à une ancrage de signet sur la page et vous ne pouvez aller à une ancre, vous ne pouvez pas passer à deux ancrages en même temps.

Si vous êtes en signet une vidéo, la chose naturelle serait que l'URL conduit à la vidéo, et si vous devez afficher un onglet spécifique dans la page, vous devez disposer du code qui reconnaît l'ancre vidéo et montre l'onglet correct.


0 commentaires

2
votes

L'expression régulière pour analyser l'URL fragment après # est comme ceci: xxx

Cela signifie que chaque caractère pourrait être passé. Donc, Choisissez une de ces deux approches:

  1. Convertissez tous les hatus après le premier à '% 23'. De plus, vous devez le faire (convertir à% hexagonal eq.) Pour tous les caractères non acceptables ou réservés. ex: http://domain.com/app#first%23second
  2. Utilisez plusieurs hachages et traitez-le dans l'application! Le premier est facile mais ne peut pas être mis en œuvre dans votre application spécifique.

    voir Ce doc pour assurer la validité caractères après # .


0 commentaires

1
votes

Un moyen simple serait d'utiliser un lien comme ceci: xxx pré>

puis analyser le hachage pour obtenir l'identifiant de la vidéo: p> xxx pré>

Vous pouvez également écouter le "HASHCHANGE" événement, juste au cas où quelqu'un copier / colle une URL pour une vidéo spécifique alors que sur votre page Web (par exemple, avec un hachage différent): p>

window.addEventListener("hashchange",function(event){
    // check hash for video with ID
});


0 commentaires