2012-08-24 26 views
5

Câu hỏi đơn giản: jQuery biết chế độ hiển thị nào mà một phần tử nên sử dụng khi sử dụng fadeIn?Làm thế nào để jQuery FadeIn biết chế độ hiển thị được sử dụng?

Những gì tôi có nghĩa là, là nó xuất hiện để sử dụng các chế độ hiển thị thích hợp cho bất kỳ yếu tố mà tôi fadeIn, ngay cả khi tôi đặt display:noneban đầu trong CSS của tôi - hình ảnh được sử dụng inline, divs đang sử dụng khối vv

Tôi đã xem mã nguồn jQuery trên GitHub, nhưng tôi không thể định vị những gì tôi đang tìm kiếm.

Lý do tôi hỏi là vì tôi tự tạo một plugin nhỏ, sử dụng phai (nhưng với Animate, vì có nhiều hơn 1 thuộc tính cần hoạt ảnh).

Trả lời

6

Nó sử dụng $.data để lưu trữ nó:

console.log($._data(elem, "olddisplay")); 

Các dấu gạch dưới có nghĩa là nó có thể truy cập dữ liệu đó không phải là thường có sẵn thông qua $.data hoặc $.fn.data. Về cơ bản điều này là dành cho chỉ sử dụng nội bộ và bạn không nên chạm vào nó.

Nếu nguyên tố này được thiết lập để display:none thông qua CSS, và bạn dần giảm âm trong, jQuery vẫn biết để làm cho nó inline vv Trong trường hợp này, nó sử dụng các chức năng

// Try to determine the default display value of an element 
function css_defaultDisplay(nodeName) { 

nào sẽ cung cấp cho "inline" cho một nodeName === "span"

+0

Khi nào dữ liệu này được gán? – Jeff

+0

@Jeff khi bạn gọi '.hide()' – Esailija

+1

Tôi thường đặt display: none trên tất cả các phần tử mà tôi dự định mờ dần sau này, trong CSS, và nó vẫn hoạt động? – Jeff

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