Afficher/masquer div en Jquery

obk -  
 test -
Bonjour,

J'ai codé un petit code en jquery pour afficher/masquer selon le besoin le contenu de div qui ont tous la même class !

Je ne comprends pas pourquoi le code marche avec firefox mais pas avec chrome (alors que j'utilise du jquery, il ne devrait pas avoir de problème)

Merci.

voici le code ;
$(document).ready(function(){
	    // on sélectionne tous les div avec la classe zoneTexte et on les parcours
	    $("div.details").each(function(i){
	        // on recupere la longueur du texte et on coupe à la longueur 100 (s'il est aussi

	            var contenu = $(this).html();

                    
                    var debut = contenu.substr(0,0);
                    $(this).html(debut);
	            $(this).append("<span id='continuer"+(i+1)+"'> Afficher la description</span>");
	            $(this).append("<span id='suite"+(i+1)+"'>"+contenu+"</span>");
	            $(this).append("<span style='font-weight: bold' id='masquer"+(i+1)+"'> [Réduire]</span>");
	            $("#suite"+(i+1)).hide();
                    $("#masquer"+(i+1)).hide();
	            $(this).find("span#continuer"+(i+1)).click(
	            function(){
	                $(this).hide();
	                $("#suite"+(i+1)).fadeIn("slow");
	                $("#masquer"+(i+1)).fadeIn("slow");
	            })
	            $(this).find("span#masquer"+(i+1)).click(
	            function(){
	                $(this).hide();
	                $("#suite"+(i+1)).fadeOut("slow");
	                $("#continuer"+(i+1)).fadeIn("slow");
	            });
	});

});

3 réponses

  1. aurus1212
     
    As-tu activé le javascript sur Chrome ?
    3
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Salut.

    var debut = contenu.substr(0,0);
    $(this).html(debut);
    Remplace le deuxième 0 par 100.

    $(this).find("span#continuer"+(i+1)).click(
    function(){
        $(this).hide();
        $("#suite"+(i+1)).fadeIn("slow");
        $("#masquer"+(i+1)).fadeIn("slow");
    })
    Il manque un point-virgule.
    0
  3. obk
     
    Salut à vous deux,

    J'ai corrigé le ; mais ça ne change rien.
    En fait sur chrome, ça masque bien le texte, ça le dévoile lorsque je clique sur afficher la description mais lorsque je clique sur réduire, j'ai denouveau afficher la description qui réapparaît mais le contenu ne se remasque pas. Alors que ça marche très bien sur firefox.

    Et pour l'histoire du 0 et du 100, j'ai volontairement mis 0 car je veux masquer tout le contenu du div!

    Merci encore pour votre aide.

    Si quelqu'un à une autre idée ?
    0
    1. obk
       
      Aucune idée ?!
      0
    2. test
       
      ok
      0