2011-01-22 49 views
6

Khi tôi cố gắng để có được những contentwindow iframe, sử dụngkhung nội tuyến ContentWindow

var contentWindow = document.getElementbyId('iframe').contentWindow 

đôi khi nó sẽ trả về "Window undefined" vì contentWindow không tồn tại. Tôi dường như không thể chạy séc cho nó bằng cách sử dụng

if (contentWindow === unidentified) or if (contentWindow === null) 

vì nó chỉ là lỗi trong mã nếu tôi cố gắng lấy giá trị ra khỏi mã. Có ai khác chạy vào vấn đề này và tìm ra một giải pháp?

+3

'unidentified' khiến tôi mỉm cười :) Chúng tôi đều là người mới bắt đầu một lần. –

Trả lời

6

Bạn có nhập đúng không? getElementByID không phải getElementbyId. Bạn có xác nhận rằng trả về một phần tử trước khi truy vấn contentWindow? Bạn đang truy vấn nó sau khi nó tải?

Bạn có đang thực hiện gEBI sau khi DOM sẵn sàng hoặc tải trang không? Bạn đã ném vào cảnh báo trên các yếu tố? Miền trong iframe có giống với miền gốc không? Bạn đang dùng trình duyệt nào?

if (contentWindow === unidentified) or if (contentWindow === null) 

Không có điều nào như unidentifiedundefined. Chậm lại và chính xác.

+1

+1 cho đôi mắt sắc bén của bạn ... – Wazzzy

2

Hãy thử này

var iframeElem = parent.document.getElementById("iframe"); 
var win = iframeElem.contentWindow; 
-2

Cố gắng xác định những dữ liệu mà bạn muốn từ các đối tượng bạn gọi đây

var contentWindow = document.getElementById('iframe') 

bằng cách làm này

var contentWindow = document.getElementById('iframe').contentWindow 

này làm việc cho tôi

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