2011-12-20 5 views
0
<div id="aaa">sdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdfsdfas fasdfa asdf </div> 

#aaa { 
height: 100px; 
    width: 200px; 
    overflow: scroll; 
} 

$("#aaa").scrollTop = $("#aaa").scrollHeight; 

http://jsfiddle.net/PfA7Q/2/스크롤 (파이어 폭스와 IE에서!)

파이어 폭스와 IE에서이 DIV에서 아래로 스크롤을 수행 할 수 있습니까?

+1

기술적으로는 텍스트 영역이 아닙니다. – scunliffe

+1

내 질문이 업데이트되었습니다 –

답변

2

코드가 약간 잘못되었습니다. jQuery에서 scrollTop은 실제로 기능이 아닌 속성입니다. 그리고 scrollHeight는 jQuery와 관련이없는 네이티브 javascript 속성입니다. 그래서 당신은 이런 식으로 뭔가를 할 것입니다 :

$('#aaa').scrollTop($("#aaa")[0].scrollHeight); 
말했다되고 그건

http://jsfiddle.net/PfA7Q/14/

, 당신은 아마 다음과 같이 그것을 얻는 대신 변수에 두 번 당신의 DIV 참조를 캐시해야합니다

+0

아래쪽으로 스크롤하려면 scrollTop 함수에 엄청나게 큰 숫자를 전달하면됩니다. 아니, 나는 그것을 recommand하지만 그냥 알다시피. – Leo

+0

감사합니다, btw 왜 [0]? :) –

+0

jQuery의'$'함수를 사용하면 jQuery는 DOM 요소의 배열을 반환한다. $ ('# aaa')를 수행하고 있습니다. scrollHeight는 배열의 scrollHeight 속성을 읽는 것과 실제로 같지만 이해가되지 않습니다. 따라서 [0] (배열의 첫 번째 항목)을 사용하여 DOM 요소를 직접 가져와야합니다. – Leo

0
$("#aaa").attr({ scrollTop: $("#aaa").attr("scrollHeight") }); 

var $aaa = $('#aaa'); 
$aaa.scrollTop($aaa[0].scrollHeight); 
이의 jQuery 1.6에 대한 prop으로 attr의 교체.

관련 문제