Salut,
dans mon chat je souhaite que lors des rafraichissements le scroll reste inchangé. Le contenu est modifié mais le scroll doit pas revenir en bas ni en haut.
Je veux donc récupérer sa position pour la réutiliser.
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
function rafraichirmsg(d){
	var scroll = $('#messages').scrollTop();#je sauve mon scroll
	desti = d;
	clearTimeout(timer);
        $.ajax({
	type: 'POST',
	url: 'chatmsg.php',
	data: {d: d},
	success: function(b) {
		if(d!='conx'){
			timer = setTimeout(function(){ rafraichirmsg(d); }, 3000);
		}
	$('#messages').html(b);#contenu modifié
	var elt = document.getElementById("messages");
	elt.scrollTop=elt.scroll;#je récupère mon scroll
	}
});

Ça fonctionne pas comment faire s'il vous plait ?
Pour l'instant ça remet le scroll tout en haut de la page à chaque rafraichissement...

EDIT :
Je me suis aperçu que y avait pas besoin de faire ça.
Donc meme si mon contenu est modifié le scroll bouge pas !
C'est bien si je suis en haut de la div pour ne pas redescendre. SAUF si je suis en bas de la div parce que si on m'envoie un message alors le scroll ne bouge pas... donc bah le message est caché en bas et il faut manuellement descendre (quelques pixels) et c'est embêtant en discussion instantanés !

Quelqu'un aurait une idée pour scroll vers le bas uniquement si [un message est reçu]/[on est déjà en bas]
Les deux propositions entre crochets sont équivalentes parce que je souhaite faire ça seulement quand on est déjà en bas :
on est en bas de la div, un message arrive et BIM on veut pas qu'il se cache donc le scroll descend.