2009-08-11 31 views
28

Không ai biết về một plugin tốt đẹp cho lớp phủ tải ajax ngăn chặn bất kỳ hành động nào khác trong trình duyệt cho đến khi dữ liệu được tải.jquery ajax tải lớp phủ plugin

+1

FYI được gọi là hộp thoại 'chế độ' hoặc cửa sổ bật lên - tốt để biết bạn có đang sử dụng tập lệnh không :) –

Trả lời

30
+0

trông đơn giản và trọng lượng nhẹ ... chưa thử xem có vấn đề gì không ... – coool

+0

nếu bạn sử dụng tab, bạn vẫn có thể chỉnh sửa trong các trường bị chặn. –

+0

@Popo: áp dụng mặt nạ cho phần tử BODY. Cách đó toàn bộ trang bị chặn. –

27

Hãy thử blockUI: http://malsup.com/jquery/block/

này không có bất kỳ kết nối đến AJAX vốn, nhưng đó là một cái gì đó bạn có thể gọi khi thực hiện AJAX riêng của bạn gọi riêng.

6

tôi đã làm thêm một thiết kế riêng cho các loại điều này:

http://plugins.jquery.com/project/loading

Tất cả bạn cần làm là:

$.loading({onAjax:true,mask:true}); 

Điều đó sẽ dây nó lên với các sự kiện ajax tự động. Có rất nhiều tùy chọn và tính năng tuyệt vời hơn mặc dù. Bạn có thể sử dụng văn bản, các yếu tố tùy ý, áp dụng hiệu ứng "xung" và hơn thế nữa. Kiểm tra các bản demo:

http://jquery-values.googlecode.com/svn/other/loading/jquery.loading.htm

+0

plugin tuyệt vời, bất kỳ ý tưởng nào tại sao nó không hoạt động với jQtouch? http://code.google.com/p/jqtouch/ – shaiss

+0

không, và thật đáng tiếc là tôi không có iPhone để dùng thử. bạn thấy vấn đề gì? –

+0

Nó là, tuy nhiên, hầu như không độc lập và phụ thuộc vào rất nhiều các plugin khác. –

-1

Bạn có thể sử dụng dojox.widget.Standby, nhưng nó đòi hỏi bạn phải đánh dấu nội dung cho các lớp phủ với data-dojo-type="dojox.widget.Standby"

Sau đó, bạn chỉ cần tải tiện ích con với: dijit.byId('id').hide()/show()

Xem: dojox.widget.Standby documentation

+0

Câu hỏi này được gắn thẻ [tag: jquery]. Tôi không nghĩ rằng OP muốn sử dụng dojo. –

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