tôi thấy một số mã jquery trên Net nơi nào đó, mà mất dạng này:
<script>
function doSomething(message)
{
$(document).ready(function(){
alert(message);
});
};
</script>
ví dụ: một chức năng bên ngoài ("doSomething") trong đó có $ (document) .ready bên trong nó. Tôi bối rối vì không phải là mã dưới $ (tài liệu). Đã được kích hoạt khi DOM được tải? Nó giống như có một trình xử lý sự kiện bên trong một hàm (?). Hình thức mã này có hợp lý với bất kỳ ai không? Cảm ơn.
Tôi biết điều này là cũ nhưng tôi Cho phép nói rằng bạn muốn gọi một tệp XML/JSON ngay khi trang được kích hoạt, và khi hoàn thành chức năng đó, hãy cập nhật một số phần tử DOM với phản hồi nhận được.Nếu phản hồi đó nhanh hơn tải trang và các phần tử DOM chưa được tải, chúng không được cập nhật. Có thể doSomething() được gọi lại thành công và làm việc trong thời trang này? Vì vậy, nếu nó hoàn thành sớm, mọi thứ vẫn sẽ hoạt động? – iLLin
@iLLin: Đó là một trường hợp sử dụng hoàn toàn hợp lý, tôi nghĩ vậy. Vì vậy, bạn kích hoạt yêu cầu ajax với một kịch bản rất cao trong tài liệu (trong 'đầu', tôi nghĩ), bằng cách sử dụng' ready' trong callback thành công. Hoàn toàn hợp lý. Tôi không chắc rằng yêu cầu ajax sẽ xảy ra * nhiều * sớm hơn nếu bạn đặt tập lệnh ở cuối thẻ 'body' (và sau đó bạn sẽ không phải bận tâm với' ready'), nhưng không gây hại trong việc cho phép trình duyệt biết sớm những gì bạn muốn. –
Đó là chính xác trường hợp của tôi. – miguelsan