Executer un lien créer par createElement('a')
Kensen
-
Kensen -
Kensen -
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
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
2 réponses
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
<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