Fermer une Shadowbox

Eléphanteau du PHP | 23 Messages

14 janv. 2014, 11:11

Bonjour,

J'ouvre une page PHP dans une Shadowbox. Dans cette page, je souhaiterai inclure un bouton qui ferme la shadowbox et me redirige vers une nouvelle page dans mon navigateur. J'ai trouvé cette commande sur un forum : <a onclick="parent.Shadowbox.close(parent.location.href='ta_nouvelle_page');">

N'étant pas programmeur, je ne sais pas comment intégrer ce code dans ma page PHP sachant qu'il faut penser à intégrer la class CSS de mon bouton qui est stocké dans une feuille de style externe. Quelqu'un pourrait-il m'aider en m'écrivant ce petit bout de code ?

Précision, si quelqu'un connait le moyen de fermer une Shadowbox en langage PHP...

Merci par avance.

Franck.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

14 janv. 2014, 17:09

salut,
Quelqu'un pourrait-il m'aider en m'écrivant ce petit bout de code ?
.
non ce n'est pas la politique de la maison :)

perso je ne sais pas ce qu'est ta zone d'ombre mais je pense qu'un copier collé de ce que tu indique dans ta page peux t'aider.

Ensuite sans le code qui crée ta boite on ne peux pas t'aider.

@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 23 Messages

14 janv. 2014, 17:54

J'ai souvent vu ce manque de partage chez les programmeurs. Point d'entraide possible, quel dommage. Heureusement, il y a plein d'autres forum ! :lol:

ViPHP
ViPHP | 1996 Messages

14 janv. 2014, 19:34

lol.
Ce qu'il veut dire c'est que nous sommes des programmateurs bénévoles (enfin eux car moi je ne suis même pas un programmateur) et que nous serons ravi de t'aider si tu nous indiques (comme c'est demandé) un lien vers ta page ou un bout de code.
Sans cela, on pourrait créer un code qui interagirait mal avec le site existant...
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Eléphanteau du PHP | 23 Messages

14 janv. 2014, 19:57

Ok. J'utilise Wordpress et le plug-ins Shadowbox pour ouvrir une page HTML (ou PHP) créé par mes soins. Cette ne contient rien pour le moment, donc pas de code à fournir et c'est bien là le problème. Donc, quel code JS (ou PHP) peut fermer un popup Shadobox ?

Merci par avance.

ViPHP
xTG
ViPHP | 7331 Messages

14 janv. 2014, 21:19

Le code que tu postes dans ton premier message ?

Et sinon ce n'est pas une question de manque d'entraide.
Fournir des codes tout fait n'aide en rien à la compréhension...
Quand on donne un code tout fait pour lire un enregistrement dans une base de donnée on se retrouve avec une demande d'un code complet pour créer un forum en demande le lendemain...

Eléphanteau du PHP | 23 Messages

14 janv. 2014, 21:43

Ok. Pour ce qui est du code, je l'ai récupéré quelque part sur un forum sans même savoir s'il fonctionne ni comment m'en servir.
Bien. Ok pour un apprentissage de votre part. Donc, voici ma première question. Comment fait-on en JS pour déclencher des fonctions à l'aide d'un bouton (ou d'un lien) Je ne parle pas de bouton de formulaire mais de bouton png ou CSS3. J'ai toute ma grammaire à apprendre, y a du boulot les gars ! :|

Eléphanteau du PHP | 23 Messages

14 janv. 2014, 21:46

En cherchant encore, j'ai trouvé ce code :

[javascript]<script type="text/javascript">

function SBClose() {

window.open('/admin/managehome.php?refno=10', '_self'); // Reload parent window.

// Optional 2nd line for the next item Shadowbox onClose should execute. Example: Use console.log('done'); to provide visual feedback in the browsers console window that it's done.
}

</script>

<script type="text/javascript">

Shadowbox.init({

onClose: SBClose // Functions listed here do not include the traditional parenthesis or semicolon. Place a comma if you have another Shadowbox Option for the next line. There should be no comma on the last Shadowbox Option listed.
});

</script>[/javascript]

Pour compléter ma question précédente, comment lier ce code à un bouton CSS ou png ?

Merci

ViPHP
xTG
ViPHP | 7331 Messages

14 janv. 2014, 21:59

J'ai regardé brièvement la source, il y a bien une fonction close.
Donc il suffit de l'appeler tel qu'indiqué dans ton premier message.

Pour déclencher une fonction javascript lorsque tu cliques sur un élément il faut utiliser l'attribut onClick :
<div onClick="FonctionJavascript();">....</div

Eléphanteau du PHP | 23 Messages

14 janv. 2014, 22:04

Ok, merci. Petite question. J'ai pour habitude d'utiliser les DIV dans du HTML, est-ce le cas ici ?

Eléphanteau du PHP | 23 Messages

14 janv. 2014, 22:20

Merci à toi xtg, cela fonctionne ! Je sais maintenant que l'on peut appeler une fonction js dans un DIV. Mais peut-on appeler tout type de fonction de cette façon ? Si oui, quelle est la syntaxe pour appeler plusieurs fonction ? Y a t-il d'autre façon de procéder ?

Merci.

Eléphanteau du PHP | 23 Messages

14 janv. 2014, 22:56

Euh...il m'arrive un truc un peu fou. Ce qui fonctionnait il y a 10 minutes encore ne fonctionne plus. Je n'ai apporté aucune modification !

Eléphanteau du PHP | 23 Messages

14 janv. 2014, 23:02

Non, je nuance, cela ne fonctionne pas sur Safari en fait mais très bien sur Chrome. Si quelqu'un a une idée...

ViPHP
xTG
ViPHP | 7331 Messages

15 janv. 2014, 15:07

L'attribut onclick est disponible sur tout élément du DOM il me semble. (enfin tant que ce dernier est accessible cela va de soit)

Tu peux appeler plusieurs fonctions :
<div onClick="FonctionJavascript();FonctionJavascript2();">....</div
Concernant ton souci de compatibilité entre navigateur cela va être dur de t'aiguiller comme cela.
Es-tu déjà certain que Shadowbox support Safari ?

Eléphanteau du PHP | 23 Messages

15 janv. 2014, 15:49

Désolez pour la compatibilité, c'est un faux problème, j'ai merdouillé. Tout fonctionne parfaitement. Merci pour ta réponse.