Voici le 1er billet d'une toute nouvelle série ici, celle du développement ... web ou non.....

J'inaugure cette rubrique avec une astuce permettant de détecter si le texte dans une boite dépasse la taille de la boîte.

En faite, je cherchais à savoir si mon texte était assez petit pour rentrer dans un "div" et sinon mettre en place une solution de pagination en Javascript.

Le principe est le suivant :

  1. s'assurer que les scrollbar son désactivées
  2. mesurer la taille de l'élement avec "element.offsetHeight"
  3. activer les scrollbar
  4. re-mesurer la taille
  5. comparer les deux mesures et remettre les scrollbar comme précédemment

Voici un petit exemple ....

 [javascript]

function isOverflown(elem)
{
	oldFlow = elem.style.overflow;
	elem.style.overflow = "hidden";
	
	//Premiere mesure
	sizeNoScroll = elem.scrollHeight;

	elem.style.overflow = "scroll";
	//Deuxième mesure
	sizeWithScroll = elem.scrollHeight;
	
	//réinitialisation
	elem.style.overflow =  oldFlow;
	return (sizeNoScroll==sizeWithScroll);
}