Tôi đang cố gắng phát hiện khi khung nội tuyến và nội dung của iframe đã tải nhưng không có nhiều may mắn. Ứng dụng của tôi lấy một số đầu vào trong trường văn bản trong cửa sổ chính và cập nhật iframe để cung cấp 'xem trước trực tiếp'Phát hiện khi nội dung Khung nội tuyến đã tải (Trình duyệt chéo)
Tôi bắt đầu với mã sau (YUI) để phát hiện khi sự kiện tải iframe xảy ra.
$E.on('preview-pane', 'load', function(){
previewBody = $('preview-pane').contentWindow.document.getElementsByTagName('body')[0];
}
'ô xem trước' là ID của khung nội tuyến của tôi và tôi đang sử dụng YUI để đính kèm trình xử lý sự kiện. Tuy nhiên, cố gắng truy cập nội dung trong hàm gọi lại của tôi (khi tải iframe) không thành công, tôi nghĩ vì iframe tải trước khi trình xử lý sự kiện sẵn sàng. Mã này hoạt động nếu tôi trì hoãn việc tải khung nội tuyến bằng cách tạo tập lệnh php tạo ra tập lệnh ngủ.
Về cơ bản, tôi hỏi phương pháp tiếp cận chính xác trên các trình duyệt để phát hiện thời điểm iframe đã tải và tài liệu của nó đã sẵn sàng là gì?
Bắt đầu với YUI là một ý tưởng tồi (cũng như bất kỳ thư viện JS khác). Tại sao? Bởi vì bạn không thể biết được thư viện đó đang làm gì. Nếu họ không thể hỗ trợ "tải" đầy đủ, bạn nên làm điều đó cho mình trong javascript rõ ràng và dễ đọc. – Christian
Bạn thường có thể đọc mã nguồn của thư viện @Christian. Tôi tìm thấy điều này thường cung cấp cho bạn những lời khuyên tuyệt vời về cách tự mình làm bất kể bạn có sử dụng triển khai của họ hay không. – AJP
@AJP Bạn hiểu nhầm quan điểm của tôi. Nếu bạn đang làm một cái gì đó bạn không chắc chắn, tốt hơn là có ít mã hơn nên có ít chỗ cho lỗi hơn. – Christian