2009-10-14 29 views
5

Tôi đang cố gắng làm một cái gì đó như hộp hoặc hộp hoặc hộp đèn ... và vân vân. Vấn đề duy nhất là tôi không biết làm thế nào để tải trước trang được tải vào hộp thông qua phương thức load().jquery tải trước trang được tải thông qua phương thức load()

Nó sẽ làm việc như thế này:

  1. Nó bật hộp
  2. tải hình ảnh động được thêm
  3. Khi trang web được tải các hình ảnh động biến mất

Vì vậy, tôi cần phải biết khi nào trang được tải để xóa hoạt ảnh.

Trả lời

3
var function_for_display_animation = function(){ 
    //display animation 
} 
var function_for_remove_animation = function(){ 
    //remove animation 
} 

function_for_display_animation(); 
$(selector).load('page.php',function_for_remove_animation); 

hay:

$().ajaxSend(function(evt, request, settings){ 
    //start animation 
}); 

$().ajaxComplete(function(event,request, settings){ 
    //end animation 
}); 

$(selector).load('page.php', function(){ 
    //work 
}); 
+1

cảm ơn câu trả lời của bạn, vì vậy chức năng gọi lại là chìa khóa – kmunky

1

Nếu tôi hiểu chính xác, bạn đang nói rằng vì một trang trên trang web của bạn sẽ mất một thời gian để tải, bạn muốn một thông báo tải thân thiện hiển thị ngay lập tức và biến mất khi trang được tải.

Bí quyết này không tải xuống nhiều khi trang tải lần đầu tiên. Chỉ thông báo tải và một số JavaScript.

Điều gì làm cho công việc này là trong hàm $ (document) .ready() của bạn, bạn sẽ sử dụng AJAX để lấy dữ liệu chậm. Khi truy vấn AJAX trả về, hãy sử dụng JS để điền trang có dữ liệu và sau đó tắt thông báo tải.

+0

hmm ... thực sự đó là câu hỏi của tôi, làm thế nào tôi có thể "nhìn thấy" khi nó là ok để loại bỏ các hình ảnh động tải? một cái gì đó như thế này là đủ? $ (bộ chọn) .load ('page.php', hàm() { $ ('. Hoạt ảnh'). Remove(); }); – kmunky

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