2016-06-09 10 views
-1

Anforderung in Chat-Anwendung, wo in, wenn ein Text in Textarea eingegeben und Schaltfläche senden wird, die msg animiert/scrollt oben auf den Bereich, so dass der Benutzer zu sehen [Fokus ist auf] die letzte getippte Nachricht. I.e. Die Bildlaufleiste sollte unten sein.jquery scrollTop Problem, Scrollbar bleibt oben, anstatt unten bleiben

Die jetzt verwendete Jquery-Version ist 1.3.2, muss aber die Jquery-Version auf 1.9.1 oder höher ändern.

Code:. Verwendet zum Scrollen

$("#msg").animate({ 
    scrollTop: $("#msg").attr("scrollHeight")-$("#msg").height() 
}, 0.001); 

$('msg').scrollTop($('msg')[0].scrollHeight); 

wenn jquery.js auf 1,92 oder 1,10 geändert wird * oder 1.11.3 usw., bleibt die Bildlaufleiste auf der Oberseite statt unten wenn die typisierten msg ist hochgescrollt, so dass der Benutzer die zuletzt eingegebene Nachricht nicht sehen kann, sondern jedes Mal nach unten scrollen muss.

Die zwei Codezeilen eingefügt, die die Arbeit erledigen. Bitte geben Sie an, wie Sie das Szenario korrigieren können.

+0

Die Zeile $ ('# msg') wurde geändert scrollTop ($ ('# msg') [0] .scrollHeight); – Radha

Antwort

1

Bitte versuchen Sie es

Ändern
$('msg').scrollTop($('msg')[0].scrollHeight); 

zu

$('#msg').scrollTop($('#msg')[0].scrollHeight); 

Es sieht aus wie '#msg' die rechten Wähler sind durch die erste Zeile Code zu verwenden, gehen. 'msg' würde nichts auswählen, außer Sie haben ein Tag mit dem Namen <msg>.

+0

$ ('# msg') scrollTop ($ ('# msg') [0] .scrollHeight); So sieht der echte Code aus, habe ich ohne # in meine Frage eingefügt, jetzt korrigiert. Bitte beraten. – Radha

Verwandte Themen