Probleme d'execution du code javascript dans lightbox/prettyPhoto [Résolu]

dodobn 8 Messages postés jeudi 21 juin 2007Date d'inscription 27 mars 2013 Dernière intervention - 8 juin 2012 à 13:23 - Dernière réponse : dodobn 8 Messages postés jeudi 21 juin 2007Date d'inscription 27 mars 2013 Dernière intervention
- 8 juin 2012 à 14:58
Bonjour,
je suis entrain de développer un site où j'utilise le plugin prettyPhoto/Ajax
pour afficher un popup qui contient après un div un bouton imprimer
mon problème c'est que prettyPhoto 3.1 n'execute pas le code javascript
merci de me répondre
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
adelami 65 Messages postés mardi 1 novembre 2005Date d'inscription 8 juin 2012 Dernière intervention - 8 juin 2012 à 14:32
3
Merci
J'ai regardé le tout et voilà mes conclusions ;-) :
Le code de la popup est à l'extérieur car il est chargé via Ajax.

Du coup, le code de la popup est ajouté dynamiquement au DOM au clic sur "Imprimer" (Celui qui ouvre la popup). Ce qui se passe, c'est, comme le dit L0ci, que le code la popup est chargé après l'ouverture de la page, donc l'évènement n'est jamais ajouté au ""...

A mon avis, il faut mettre ton ajout d'évènement après le chargement de la popup. Je crois, après avoir survolé la doc, que c'est fait avec "changepicturecallback".

Il faut tenté quelque chose de ce style là (j'ai pas les moyens de tester là) :
<script>
$(document).ready(function() {
$("a[rel^='prettyPhoto']").prettyPhoto({
changepicturecallback : function(){
$("#impression").click(function(){
alert("imprimer");
});
}
});

});
</script>

Merci adelami 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de adelami
adelami 65 Messages postés mardi 1 novembre 2005Date d'inscription 8 juin 2012 Dernière intervention - 8 juin 2012 à 13:42
0
Merci
Bonjour,

Si tu ne donnes pas ton code qui refuse de fonctionner, ça va être difficile de faire quelque chose pour toi...
Commenter la réponse de adelami
dodobn 8 Messages postés jeudi 21 juin 2007Date d'inscription 27 mars 2013 Dernière intervention - 8 juin 2012 à 13:55
0
Merci
code page principale
<html>
<head>
<script type="text/javascript" src="/js/jquery.js"></script>
<script type="text/javascript" src="/js/jquery.prettyPhoto.custom.min.js"></script> 
<script>
$(document).ready(function() {
$("a[rel^='prettyPhoto']").prettyPhoto();
$("#impression").click(function(){
alert("imprimer");
});
});
</script>
</head>

   class="print">Imprimer 



</html>

pour le code de la page du popup


exemple de page à afficher


imprimer
Commenter la réponse de dodobn
dodobn 8 Messages postés jeudi 21 juin 2007Date d'inscription 27 mars 2013 Dernière intervention - 8 juin 2012 à 13:57
0
Merci
le popup s'affiche avec son contenu très bien mais le problème en cliquant sur le bouton imprimer qui se trouve dans le popup pas d'alert :(
Commenter la réponse de dodobn
cs_L0ci 224 Messages postés vendredi 26 novembre 2010Date d'inscription 11 juin 2013 Dernière intervention - 8 juin 2012 à 14:10
0
Merci
Bonjour,

tu es déjà un problème de guillemets dans ta balise a. Ensuite, pourquoi est ce que le code de ta popup se trouve en dehors de ton body?
Si ton div se charge après le javascript tu ne pourra pas lier l'action a ta balise.

Tu peux aussi utiliser un onclick() pour appeler directement la fonction a exécuter.
Commenter la réponse de cs_L0ci
dodobn 8 Messages postés jeudi 21 juin 2007Date d'inscription 27 mars 2013 Dernière intervention - 8 juin 2012 à 14:53
0
Merci
je dois mettre le code du div dans un fichier impression.html parce que ça doit être dynamique
Commenter la réponse de dodobn
dodobn 8 Messages postés jeudi 21 juin 2007Date d'inscription 27 mars 2013 Dernière intervention - 8 juin 2012 à 14:58
0
Merci
oui ça marche très bien
merci pour votre aide
Commenter la réponse de dodobn

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.