11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

tout est dans le titre Smiley cligne

l'idée est d'avoir une div avec l'intégralité du contenu (qui doit pouvoir changer)
mais n'en afficher que les x premiers caractères, avec en cliquant sur un bouton lien, l'intégralité du texte affiché

possible ?
une solution, un plugin jquery ?

merci de votre aide
Je t'ai écrit vite fait un petit plugin (qui peut certainement etre optimisé... avis aux amateurs) :


<script type="text/javascript">
$.fn.textLengthToggle = function(longueur) {
	return this.each(function(){
		var contenu_original = $(this).html();
		var text_original = $(this).text();
		var text_court = text_original.substring(0, longueur)+'...';
		$(this).text(text_court);
		$(this).click(function(){
			if($(this).text() == text_original) {
				$(this).text(text_court);
			}
			else {
				$(this).html(contenu_original);
			}
		});
	});
}

$(document).ready(function(){
	$('div').textLengthToggle(30);
});
</script>


Pour le faire marcher il suffit d'appliquer la methode .textLengthToggle(longueur) à ton sélecteur, en passant en paramètre le nombre de caractères a garder (longueur).