tôi có mã HTML này:Nhận tài liệu IFrame, từ JavaScript trong tài liệu chính
<html>
<head>
<script type="text/javascript">
function GetDoc(x)
{
return x.document ||
x.contentDocument ||
x.contentWindow.document;
}
function DoStuff()
{
var fr = document.all["myframe"];
while(fr.ariaBusy) { }
var doc = GetDoc(fr);
if (doc == document)
alert("Bad");
else
alert("Good");
}
</script>
</head>
<body>
<iframe id="myframe" src="http://example.com" width="100%" height="100%" onload="DoStuff()"></iframe>
</body>
</html>
Vấn đề là tôi nhận được thông báo "Bad". Điều đó có nghĩa là tài liệu của khung nội tuyến không được nhận chính xác và những gì được trả về bởi hàm GetDoc là tài liệu gốc.
Tôi sẽ biết ơn, nếu bạn nói nơi tôi làm sai. (Tôi muốn nhận tài liệu được lưu trữ trong IFrame.)
Cảm ơn bạn.
Điều này đã được yêu cầu vào năm 2010, hôm nay vào năm 2015, điều này sẽ không hoạt động trong bất kỳ trình duyệt mới nào, trừ khi bạn đang phát triển lên google.com. Do chính sách nguồn gốc chéo, bạn không thể truy cập nội dung của khung nội tuyến, nếu nó trỏ đến một trang trên một miền khác với tên miền mà tài liệu gốc của bạn được tải. – aorcsik