2011-06-22 32 views
10

Tôi có một div nơi tôi đã làm một $('#div').css('display', 'none');jQuery fadeIn() trên màn hình không

Bây giờ, để đưa mặt hàng này trở lại, tôi muốn phai nó. Tuy nhiên, nó có vẻ như $('#div').fadeIn() không làm việc đó, nhưng Tôi không muốn thiết lập hiển thị trở lại khối, như thể tôi làm nó chỉ xuất hiện ngay lập tức thay vì mờ dần .. bất kỳ ý tưởng?

+1

Chúng tôi có thể thấy mã đánh dấu và mã bạn đang sử dụng không? – kinakuta

+0

pelase cung cấp cho chúng tôi đoạn mã của bạn – genesis

+0

Có phải '.hide()' thực sự làm cho nó hoạt động không? –

Trả lời

21

Hãy thử

$('#div').hide(); 

để ẩn phần tử.

Cập nhật: Tôi đã đề xuất điều này vì tôi gặp sự cố khi đặt .css('display', 'none') trên body trong Firefox. Nhưng nó sẽ làm việc cho các yếu tố khác.

Nhưng nếu nó không hoạt động với hide() thì bạn chắc chắn có một vấn đề khác và bạn phải đăng thêm mã hoặc cung cấp bản trình diễn.

Trình duyệt nào không thành công? Bạn có chắc chắn $('#div').fadeIn() được thực thi không?

+1

Đây không phải là câu trả lời đúng và đây là lý do tại sao: bạn không thể khởi động đối tượng bị ẩn, ngoại trừ bằng cách ẩn nó trước tiên bằng dấu(). Tôi tin rằng đây là một lỗi thực sự cho những người cần phải bắt đầu một đối tượng ẩn thông qua CSS và sau đó trình bày nó cho người dùng sau này – somid3

+0

hey .. chỉ cần đi qua một liên kết này từ [câu hỏi khác] (http://stackoverflow.com/questions/22978913/jquery-fadein-method-isnt-working) .... và các OP dường như đồng ý với điều này như một giải pháp ... bạn có thêm thông tin nào về hành vi này ... gọi 'hide()' đặt 'display' thành' none' đúng không –

3

Hãy thử

$('#div').hide(); 

thay vì

display:none; 
4

4 năm quá muộn nhưng im hy vọng này ít nhất sẽ giúp ai đó ra.

Trước tiên bạn cần thay đổi lớp CSS bằng cách sử dụng jquery thành visibility:hidden và sau đó áp dụng chức năng mờ dần. Bạn có thể chuỗi chúng trong cùng một chức năng hoặc chạy chúng một cách riêng biệt. Dù bằng cách nào bạn sẽ thấy phần tử chỉ mờ dần trở thành hiện hữu như mong đợi.

1

Chỉ cần thêm tùy chọn tốc độ;

$('#div').fadeIn(1000); 

Nó làm việc cho tôi ...

0

Tôi đã có một vấn đề tương tự do CSS thiết lập để các yếu tố và trạng thái :hover của nó.

-webkit-transition: all 0.3s linear; 
-moz-transition: all 0.3s ease; 
-ms-transition: all 0.3s ease; 
-o-transition: all 0.3s ease; 
transition: all 0.3s ease; 

Tôi đã xóa những dòng trên và cuối cùng là jquery's fadeIn() hoạt động hoàn hảo.

Ngoài ra hãy chắc chắn rằng bạn không sử dụng display:none !important;

Và vâng, bạn chỉ cần thiết lập CSS display:none; và sau đó sử dụng fadeIn().

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