2009-09-22 7 views
0

J'ai besoin d'afficher la liste des nouvelles d'une base de données sur un formulaire Web. Je voudrais afficher une quantité fixe de données (dire une certaine hauteur ou un certain nombre de caractères) pour chaque élément sur le chargement de la page, puis avoir un bouton PLUS qui afficherait alors le paragraphe complet. J'ai vu comment utiliser hide ou slideUP/Down pour masquer l'ensemble de la balise DIV, mais comment en cacher une partie? Je vous remercie.Comment utiliser jQuery pour masquer du contenu dans une balise DIV

Répondre

0

Une autre suggestion à part les autres est de mettre du côté serveur le texte supplémentaire dans une balise span spécifique.

<p>some text <span class='extra'> the extra text </span></p> 

Et puis dans js basculer cette durée comme vous le souhaitez.

+0

Merci Elzo- J'avais pensé à cette idée mais j'ai pensé que ça pouvait paraître étrange. Je vais tenter le coup et je pourrais également tirer parti de quelques hacks de Mikes. Merci les gars. –

1

Vous devez séparer le contenu en différents éléments HTML. Si vous ne faites pas cela en envoyant le code HTML, vous devrez créer des instructions JQuery pour le faire pour vous. Ensuite, vous pouvez masquer les éléments que vous ne voulez pas voir, en les affichant plus tard.

2

Vous pouvez essayer cette

$("#myDiv").css("overflow","hidden").height(100); 

Et si vous vouliez compter le nombre de caractères que vous pourriez faire un hack comme ceci:

function GetHeightForChars(txt){ 
    return $("#myDiv").text(txt).height(); 
} 

Et continuer à appeler cette fonction avec différentes quantités de texte jusqu'à ce que vous obteniez une hauteur que vous aimez. Vous voudrez probablement le faire pendant que le div n'est pas attaché au DOM, sinon il pourrait sembler bizarre.

Questions connexes