Bạn đang xem : center javascript trong html

Hãy tưởng tượng bạn có một phần tử được thêm động vào trang web của bạn (ví dụ: một hình ảnh trong hộp đèn) và bạn muốn căn giữa nó trên màn hình theo cả chiều ngang và chiều dọc.

Bạn có thể làm như vậy với CSS (như bài viết này giải thích), nhưng nếu bạn không biết kích thước của phần tử bạn muốn căn giữa hoặc bạn cần hỗ trợ các trình duyệt cũ hơn, mọi thứ có thể trở nên phức tạp khá nhanh.

Đó là lúc bạn nên nghĩ đến việc thực hiện công việc với JavaScript.

Đầu tiên, chúng tôi cần một hình ảnh:

  

var

img

=

new

Hình ảnh

(),

body

=

document

.

getElementsByTagName

(

"

body

"

) [

0

];

img

.

src

=

"

http://www.lolcats.com/images/u/13/39/tastegood.jpg

"

;

body

.

appendChild

(

img

);

Chỉ là công việc.

Bây giờ để căn giữa, chúng tôi sẽ cần kích thước của hình ảnh:

  

var

imageWidth

=

img

.

offsetWidth

,

imageHeight

=

img

.

offsetHeight

;

bảng điều khiển

.

log

(

imageWidth

,

imageHeight

) ;

Nhưng điều này chỉ ghi 0 0 vào bảng điều khiển. Chuyện gì đang xảy ra?

Chà, chúng tôi cần đợi hình ảnh tải trước khi có thể truy cập các thuộc tính của nó:

  

img

.

tải lên

=

hàm

() {

var

imageWidth

=

this

.

offsetWidth

,

imageHeight

=

this

.

offsetHeight

;

bảng điều khiển

.

log

(

imageWidth

,

imageHeight

) ;

}

Tốt hơn.

Bây giờ chúng ta cần lấy các kích thước của khung nhìn:

  

var

vpWidth

=

document

.

documentElement

.

clientWidth

,

vpHeight

=

tài liệu

.

documentElement

.

clientHeight

;

Sau đó, tất cả những gì còn lại phải làm là trừ chiều rộng của hình ảnh khỏi chiều rộng khung nhìn, giảm một nửa sự khác biệt và đặt trái của hình ảnh thuộc tính phù hợp.

< span title = "Trả về số pixel mà tài liệu đã được cuộn theo chiều dọc."> thuộc tính pageYOffset .

  

img

.

tải lên

=

hàm

() {

var

imageWidth

=

this

.

offsetWidth

,

imageHeight

=

this

.

offsetHeight

,

vpWidth

=

document

.

documentElement

.

clientWidth

,

vpHeight

=

tài liệu

.

documentElement

.

clientHeight

;

this

.

style

.

vị trí

=

'

tuyệt đối

'

this

.

style

.

trái

=

(

vpWidth

-

imageWidth

)

/

2

+

'

px

'

;

this

.

style

.

top

=

(

vpHeight

-

imageHeight

)

/

2

+

window

.

pageYOffset

+

'

px

'

;

}

Bây giờ điều này đã hoạt động, nhưng chúng tôi muốn căn giữa hai yếu tố, chúng tôi có rất nhiều mã trùng lặp.

Đó là lý do tại sao tốt hơn là nên đặt mã để căn giữa mọi thứ trong chức năng của chính nó.

Trong ví dụ sau, tôi đã mở rộng nguyên mẫu của HTMLElement để có cú pháp đẹp hơn.

  

HTMLElement

.

nguyên mẫu

.

center

=

function

() {

var

w

=

document

.

documentElement

.

clientWidth

,

h

=

tài liệu

.

documentElement

.

clientHeight

;

this

.

style

.

vị trí

=

'

tuyệt đối

'

;

this

.

style

.

trái

=

(

w

-

này

.

offsetWidth

)

/

2

+

'

px

'

;

this

.

style

.

top

=

(

h

-

này

.

offsetHeight

)

/

2

+

window

.

pageYOffset

+

'

px

'

;

}

var

img

=

new

Hình ảnh

(),

body

=

document

.

getElementsByTagName

(

"

body

"

) [

0

];

img

.

src

=

"

http://www.lolcats.com/images/u/13/39/tastegood.jpg

"

;

img

.

onload

=

hàm

() {

this

.

center

();

}

body

.

appendChild

(

img

);

Tôi hy vọng điều này sẽ giúp ích cho ai đó.

Nếu bạn có bất kỳ nhận xét hoặc câu hỏi nào, tôi rất vui được nghe chúng.


Xem thêm những thông tin liên quan đến chủ đề trung tâm javascript trong html

JavaScript 26 - DOM JS Hide/Show Div - Trung Tâm Java Master

  • Tác giả: JMaster Trung Tâm Java
  • Ngày đăng: 2020-07-07
  • Đánh giá: 4 ⭐ ( 2014 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Thực hành sử dụng DOM JS để ẩn hiện nội dung trên giao diện theo logic nghiệp vụ bài toán.

Sử dụng Javascript trong HTML

  • Tác giả: viettuts.vn
  • Đánh giá: 5 ⭐ ( 1009 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Một script là một phần nhỏ trong chương trình mà có thể thêm khả năng tương tác cho trang web của bạn. Ví dụ, một script sẽ tạo ra một hộp cảnh báo pop-up hoặc cung cấp một dropdown menu.

Sử dụng JavaScript trong HTML

  • Tác giả: timoday.edu.vn
  • Đánh giá: 3 ⭐ ( 4785 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Sử dụng ngôn ngữ lập trình JavaScript trong HTML

JavaScript là gì? Cơ bản về ngôn ngữ lập trình của tương lai - Trung tâm hỗ trợ kỹ thuật

  • Tác giả: wiki.matbao.net
  • Đánh giá: 5 ⭐ ( 5602 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: JavaScript là gì? JavaScript là một ngôn ngữ lập trình website, được tích hợp và nhúng trong HTML giúp website sống động hơn.

JavaScript đặt trọng tâm thành phần tử biểu mẫu HTML

  • Tác giả: qastack.vn
  • Đánh giá: 3 ⭐ ( 1766 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: [Tìm thấy giải pháp!] Làm cái này. Nếu yếu tố của bạn là một cái gì đó như thế này…

Sử dụng Javascript trong HTML

  • Tác giả: vietjack.com
  • Đánh giá: 4 ⭐ ( 9857 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Sử dụng Javascript trong HTML - Học HTML cơ bản và nâng cao theo các bước đơn giản và dễ hiểu từ HTML là gì, Tag trong HTML, HTML tag, thẻ trong HTML, tổng hợp các thẻ HTML cơ bản, thẻ meta, thuộc tính, định dạng, thẻ trong HTML, commemnt, font, marquee, hình ảnh, link, bảng, frame, danh sách, layout, màu, form, background, style sheet, và sử dụng javascript.

Javascript trong HTML

  • Tác giả: webvn.com
  • Đánh giá: 5 ⭐ ( 4349 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Ví dụ và cách sử dụng javascript trong HTML.

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  RIGHT (Transact-SQL) - Máy chủ SQL - hàm chuỗi bên phải sql

By ads_php