2011-10-21 35 views

Trả lời

1

Cập nhật sau khi bình luận Nếu chiều rộng của cơ thể không vượt quá khung nhìn của trình duyệt:
cuộn bên trong một yếu tố:

var elem = document.getElementById("container"); //div#container 
var elemWidth = elem.scrollWidth; 
var elemVisibleWidth = elem.offsetWidth; 
elem.scrollLeft = (elemWidth - elemVisibleWidth)/2; 


Sử dụng mã này để theo chiều dọc & ngang tập trung một trang (xem cũng: this answer):

window.scrollTo(
    (document.body.offsetWidth -window.innerWidth)/2, 
    (document.body.offsetHeight-window.innerHeight)/2 
); 

Chỉ với ce nter theo chiều ngang, sử dụng:

window.scrollTo((document.body.offsetWidth -window.innerWidth)/2, 0); 
+0

'window.inner (Chiều rộng/Chiều cao)' không được IE hỗ trợ lên phiên bản 8. Câu trả lời đầu tiên của bạn bằng cách sử dụng 'documentElement' hoạt động tốt hơn. – nfechner

+0

@nfechner Để có giải thích chi tiết hơn về cách triển khai 'document.documentElement' theo cách này, hãy xem câu trả lời khác của tôi tại: http://stackoverflow.com/questions/7462611/center-a-one-page-horizontally-scrolling -site-in-browser-not-centering-a-div/7462737 # 7462737 –

+0

Tôi có nội dung bên trong hộp chứa div #. Vì vậy, tôi vẫn có thể sử dụng scrollTo()? – Jatin

0

Sử dụng các hàm JavaScript scrollTo trong trường hợp onload. Để biết thêm thông tin về cách nhận kích thước cửa sổ hiện tại, hãy xem this article.

0

một khả năng là sử dụng Javascripts scrollto khi tải trang (chỉ cần đặt này trong thư mục onload hoặc domready -event):

window.onload = function(){ 
    window.scrollTo(100, 100); // (X,Y) 
} 

chỉ cần đặt x/y giá trị cho những cái bạn cần.

Các vấn đề liên quan