Javascript - changement auto d'un href
Résolu/Fermé
nagashima
nagashima
- Messages postés
- 4269
- Date d'inscription
- samedi 8 septembre 2007
- Statut
- Membre
- Dernière intervention
- 4 mars 2021
nagashima
- Messages postés
- 4269
- Date d'inscription
- samedi 8 septembre 2007
- Statut
- Membre
- Dernière intervention
- 4 mars 2021
A voir également:
- Javascript - changement auto d'un href
- Javascript - changement auto d'un href ✓ - Forum - Javascript
- Javascript changer couleur texte ✓ - Forum - Javascript
- Javascript changer image onclick ✓ - Forum - Javascript
- Javascript change class style ✓ - Forum - Javascript
- Javascript changer couleur au clic - Forum - Javascript
3 réponses
AssassinTourist
20 févr. 2012 à 13:47
- Messages postés
- 5700
- Date d'inscription
- lundi 16 janvier 2012
- Statut
- Contributeur
- Dernière intervention
- 23 mars 2022
20 févr. 2012 à 13:47
Bonjour,
Je ne comprends pas trop pourquoi vous ne voulez pas mettre le lien directement dans le href, mais sinon, il faut utiliser du javascript.
Je ne comprends pas trop pourquoi vous ne voulez pas mettre le lien directement dans le href, mais sinon, il faut utiliser du javascript.
Sombresonge
20 févr. 2012 à 14:24
- Messages postés
- 106
- Date d'inscription
- mardi 7 février 2012
- Statut
- Membre
- Dernière intervention
- 19 avril 2015
20 févr. 2012 à 14:24
Pour modifier le lien dynamiquement, tu peux utiliser le javascript et la propriété href d'un élément
Mais sinon, comme AssassinTourist, je ne vois pas pourquoi tu ne mets pas directement le lien directement dans ta balise HTML
getElementById('id_balise_a').href = "nouveau_lien";
Mais sinon, comme AssassinTourist, je ne vois pas pourquoi tu ne mets pas directement le lien directement dans ta balise HTML
nagashima
20 févr. 2012 à 14:32
- Messages postés
- 4269
- Date d'inscription
- samedi 8 septembre 2007
- Statut
- Membre
- Dernière intervention
- 4 mars 2021
20 févr. 2012 à 14:32
salut ! merci, j'ai commencé à faire le script (juste galère vu que je connais pas le javascript mais bon)
le soucis est que j'importe une page d'un autre site, et donc je n'ai pas accès au contenu tant qu'il est pas chargé. et afin de ne pas avoir de lien cassés, je veux modifier le contenu du href pour rediriger vers une page appropriée.
le soucis est que j'importe une page d'un autre site, et donc je n'ai pas accès au contenu tant qu'il est pas chargé. et afin de ne pas avoir de lien cassés, je veux modifier le contenu du href pour rediriger vers une page appropriée.
AssassinTourist
20 févr. 2012 à 14:37
- Messages postés
- 5700
- Date d'inscription
- lundi 16 janvier 2012
- Statut
- Contributeur
- Dernière intervention
- 23 mars 2022
20 févr. 2012 à 14:37
Tu peux savoir les id des éléments quand même ?
nagashima
20 févr. 2012 à 14:38
- Messages postés
- 4269
- Date d'inscription
- samedi 8 septembre 2007
- Statut
- Membre
- Dernière intervention
- 4 mars 2021
20 févr. 2012 à 14:38
ah et oui, les éléments sont toujours construits de la même manière, enfin je voulais récupérer tous les "<a></a>" d'une div connue.
merci de ton aide !
bne journée
merci de ton aide !
bne journée
nagashima
20 févr. 2012 à 14:37
- Messages postés
- 4269
- Date d'inscription
- samedi 8 septembre 2007
- Statut
- Membre
- Dernière intervention
- 4 mars 2021
20 févr. 2012 à 14:37
ok j'ai réussi. voilà donc le code :
à rajouter après l'inclusion afin de charger après le chargement de la page inclue
pour faire simple, pour chaque lien de base, je récupère simplement un identifiant, qui se trouve n'importe où dans le lien en get. Connaissant l'élément recherché ("v="), je recherche sa position puis la prochaine instance "?" (séparateur des éléments get).
ensuite je récupère ce paramètre grâce à une chaine et les positions lues au préalable et je modifie le contenu du href.
voilà, merci quand même !
bonne journée,
naga
var chaine; var refvideo=""; var posbeg=0; var posend=0; var expr; var liens = page.getElementsByTagName("a"); expr = new RegExp("/watch", "i"); for(var i=0; i<liens.length; i++){ refvideo=""; posbeg=0; posend=0; chaine = liens.item(i).href; posbeg=chaine.indexOf("v=",1); posbeg+=2; posend=chaine.indexOf("&",posbeg); for(var j=posbeg;j<posend;j++) refvideo=refvideo+chaine.charAt(j) liens.item(i).href="/index.php?page=video&ref="+refvideo; }
à rajouter après l'inclusion afin de charger après le chargement de la page inclue
pour faire simple, pour chaque lien de base, je récupère simplement un identifiant, qui se trouve n'importe où dans le lien en get. Connaissant l'élément recherché ("v="), je recherche sa position puis la prochaine instance "?" (séparateur des éléments get).
ensuite je récupère ce paramètre grâce à une chaine et les positions lues au préalable et je modifie le contenu du href.
voilà, merci quand même !
bonne journée,
naga
AssassinTourist
20 févr. 2012 à 14:43
- Messages postés
- 5700
- Date d'inscription
- lundi 16 janvier 2012
- Statut
- Contributeur
- Dernière intervention
- 23 mars 2022
20 févr. 2012 à 14:43
Sujet résolu alors ? =)
nagashima
20 févr. 2012 à 15:07
- Messages postés
- 4269
- Date d'inscription
- samedi 8 septembre 2007
- Statut
- Membre
- Dernière intervention
- 4 mars 2021
20 févr. 2012 à 15:07
ouaip, j'avais oublié ;)
tito23
20 févr. 2012 à 16:25
- Messages postés
- 305
- Date d'inscription
- mardi 10 août 2010
- Statut
- Membre
- Dernière intervention
- 16 janvier 2013
20 févr. 2012 à 16:25
au lieu d'utiliser ça for(var j=posbeg;j<posend;j++)
refvideo=refvideo+chaine.charAt(j) , t'as du utiliser chaine.substr(posbeg, posend-posbeg);
refvideo=refvideo+chaine.charAt(j) , t'as du utiliser chaine.substr(posbeg, posend-posbeg);
nagashima
21 févr. 2012 à 09:28
- Messages postés
- 4269
- Date d'inscription
- samedi 8 septembre 2007
- Statut
- Membre
- Dernière intervention
- 4 mars 2021
21 févr. 2012 à 09:28
ok merci ! ca sera plus facile à reprendre ensuite ^^ (j'ai aucunes notions en javascript,, donc même si le projet est résolu, je prend tous les conseils ;] )
bne journée !
bne journée !