JavaScriptの場合
log = document.getElementById('log');
log.scrollTop = log.scrollHeight;
なんだけど、jQueryで
$("#log").scrollTop($("#log").scrollHeight());
とやると、 scrollHeightが取れなくて駄目でした。jsdo.itで見かけたやり方でやってみたらうまくいったのでメモ。
$("#log").scrollTop($("#log")[0].scrollHeight);
うまくいったものの、何故 [0]が必要なのかよく理解できてません。#logテキストエリアのscrollHeight って複数ある可能性があるのかな……。
$("#log").scrollTop($("#log").prop('scrollHeight'));
propでもちゃんと動きました。
$("#log").scrollTop($("#log").attr('scrollHeight'));
attrでは駄目でした。jQueryのバージョンは1.7.1です。
追記
理由わかった! Kai-coo Plog: jQueryでgetElementByIdを書くときの注意
0 件のコメント:
コメントを投稿