Ouvrir et refermer un lien en Javascript

Ooda Messages postés 62 Statut Membre -  
Ooda Messages postés 62 Statut Membre -
Bonjour,
Je ne connais rien en Javascript mais pour gagner du temps, je vous demande. (je connais le site du zéro mais en ce moment, je n'ai pas le temps d'apprendre le Javascript
Il y a quelques temps j'avais demander comment faire apparaitre une video en dessous du lien quand on clique dessus mais sans changer de page et l'on m'avait donner ce code :
 <script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script>
<script type="text/javascript"><!--
	$(document).ready(function() {
		$(".video").hide();
		$("a.open").click(function() {
			var id_video = '#' + $(this).attr('href');
			$('.video').slideUp('fast');
			$(id_video).slideDown('fast');
			return false;
		});
	});
// --></script> 


+ le code HTML suivant :

<p><li><a href="video_1" class="open">Video 1</a></li></p>
<div id="video_1" class="video">
(lien de la video) </div>


Mais le probleme c'est que je ne peux pas la refermer une fois ouverte, je voudrais que lorsque l'on clique sur le lien "Video 1", que la video "disparaisse".

Ques que je doit modifier ? Merci
A voir également:

3 réponses

Zep3k!GnO Messages postés 2049 Statut Membre 200
 
Tiens, je pense que ça fera ton bonheur ;)

<html>

<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script>
<script type="text/javascript"><!--
$(document).ready(function() {
$(".video").hide();
$("a.open").click(function() {
var id_video = '#' + $(this).attr('href');
if($(id_video).is(":hidden")){
$(id_video).slideDown('fast');
}else{
$(id_video).slideUp('fast');
}
return false;
});
});
// --></script>


<body>
<p><li><a href="video_1" class="open">Video 1</a></li></p>
<div id="video_1" class="video">
(lien de la video) </div>
</body>
</html>
0
avion-f16 Messages postés 20367 Statut Contributeur 4 509
 
Bien vu Zep3k!GnO, mais le problème c'est que tu ne fermes pas la vidéo en lecture si c'est un autre.

Je propose ça :
<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script>
<script type="text/javascript"><!--
	$(document).ready(function() {
		$(".video").hide();
		$("a.open").click(function() {
			var id_video = '#' + $(this).attr('href');
			
			/* Si la vidéo est visible : on doit la fermer (donc ne pas l'afficher) */
			if($(id_video).is(':visible'))
				afficher = false;
			else
				afficher = true;
			
			/* On ferme toutes les vidéos */
			$('.video').slideUp('fast');
			
			/* On affiche la vidéo si nécessaire */
			if(afficher === true)
				$(id_video).slideDown('fast');
			
			return false;
		});
	});
// --></script>
0
Ooda Messages postés 62 Statut Membre 3
 
Merci pour ce code je vien de voir le problème de l'autre code et ca m'aide bien =)
0