Рассмотрим следующий пример: ( Демонстрация здесь )
HTML:
<textarea></textarea>
<div id="button">Click Here</div>
CSS:
textarea {
height: 80px;
width: 150px;
background-color: #bbb;
resize: none;
border: none;
}
#button {
width: 150px;
background-color: #333;
color: #eee;
text-align: center;
}
JS:
$(function() {
var textarea = $("textarea");
textarea.val("Hello\nStack\nOverflow!\nThere\nAre\nLots\nOf\nGreat\nPeople\nHere");
$("#button").click(function() {
textarea.val(textarea.val() + "!");
});
textarea.scrollTop(9999).focus(); // Arbitrary big enough number to scroll to the bottom
});
При нажатии #button
значение textarea
изменяется, и по какой-то причине полоса прокрутки идет вверх (я проверял это в Firefox, не уверен в других браузерах).
Почему это происходит?
Как я могу это исправить?
Я нашел здесь одно возможное решение, но мне интересно, есть ли другие решения.