Executer un lien créer par createElement('a')

Fermé
Kensen - 5 févr. 2010 à 16:39
 Kensen - 9 févr. 2010 à 11:55
Bonjour,

Tout nouveau sur javascript, j'essaye de me débrouiller avec le problème suivant :

var objLink = document.createElement('a');
objLink.setAttribute('href',url);
objLink.setAttribute('rel','shadowbox;height=500;width=800'); // shadowbox permet de créer une iframe au dessus de ma page html courante
objLink.setAttribute('title',caption);

j'utilise document.createElement('a') pour créer un lien mais je ne sais pas comment demander à la fonction d'exécuter ce lien.

J'ai comme l'impression que ça ne doit pas être bien compliqué mais après avoir passé l'après midi sur google et fait quelques expérimentation 'ésotérique' ... je n'y arrive pas.

Si l'un d'entre vous avait la réponse ... je l'en remercie par avance

K
A voir également:

2 réponses

avion-f16 Messages postés 19125 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 23 mars 2023 4 468
5 févr. 2010 à 17:37
Comment l'exécuter ? Tu veux dire l'afficher ?
document.appendChild(objLink);
0
Pour tester l'ouverture de ma shadowbox, j'ai créé un lien de ce type dans mon fichier HTML:

<a href="mon_fichier.html" rel="shadowbox;height=500;width=800" title="titre_du_fichier">mon lien</a>


et ça marche très bien.

Mon problème est que la commande d'ouverture de ce lien viens d'un clic sur une animation Flash (dont je n'ai pas les sources :( ). Voici une partie du fichier XML qui permet de paramétrer l'action sur les éléments du Flash :


<slide_show>
<options>
<background>#ffffff</background>
</options>

<photo href="javascript:affiche_div('mon_fichier.html','titre_du_fichier');" target="_self">./images_carrousel/image1.png</photo>


Mon idée est donc de passé par javascript pour recréer mon lien <a> avec l'attribut rel="shadowbox;height=500;width=800" et ensuite qu'il s'active. Voici le code de ma fonction :

<script type="text/javascript">
function affiche_div(url,caption) {
var objLink = document.createElement('a');
objLink.setAttribute('href',url);
objLink.setAttribute('rel','shadowbox;height=500;width=800');
objLink.setAttribute('title',caption);

document.appendChild(objLink);
}
</script>


Sur un clic d'un des éléments du Flash la fonction JS s'active bien mais le lien lui ne s'active pas. J'ai essayé, mais au mieux j'arrive à déclencher le lien sans l'attribut (donc le href="mon_fichier.html") mais pas avec l'attribut 'rel' qui permet de l'ouvrir via la shadowbox.

Voilà j'espère avoir été plus clair dans mes explications. J'espère aussi que quelqu'un pourra me mettre sur la bonne voie. Et j'espère enfin que ce que je cherche à faire est tout simplement possible.

Merci
0