Tôi có iframe (tên miền chéo) với src từ facebook, twitter hoặc v.v. Tôi cần có chiều cao iframe nhưng tôi gặp vấn đề: "Quyền bị từ chối truy cập tài liệu '' '. Xin hãy giúp tôi giải quyết vấn đề này. Cảm ơn nhiều!Cách lấy chiều cao của tên miền chéo iframe
Trả lời
Vấn đề về cặp đôi. Đầu tiên, chiều cao của iframe
có thể không phải là thứ bạn muốn. Tôi có nghĩa là đó là thiết lập rõ ràng trong mã HTML của trang bạn kiểm soát và có thể truy cập dễ dàng và có thể sửa đổi thông qua bất kỳ phương tiện Javascript. Những gì bạn xuất hiện sau đó là chiều cao của trang bên trong iframe. Nếu đó là trường hợp, câu trả lời đơn giản là bạn không thể, ít nhất là không với các dịch vụ bên ngoài như Facebook/Twitter.
Vì lý do bảo mật, người ta có thể dễ dàng truyền tin nhắn từ trẻ sang cha mẹ, nhưng không phải từ cha mẹ sang con, trừ khi đường dẫn truyền thông được tích hợp vào javascript trong cả hai tài liệu. Có giao thức postMessage
để xử lý điều này trong các trình duyệt hiện đại. https://developer.mozilla.org/en/DOM/window.postMessage. Nhưng, nó hoàn toàn vô dụng trong trường hợp này trừ khi tài liệu bạn đang giao tiếp được thiết lập để xử lý một postMessage đến, mà theo hiểu biết của tôi Twitter/Facebook thường xuyên thì không.
Nếu tài liệu gốc có thể tự do giao tiếp với trẻ em từ các miền khác nhau, thì bất kỳ javascript nào có thể thực thi hiệu quả mọi chuỗi lệnh trên bất kỳ trang web nào bạn đăng nhập. Các tác động an ninh của điều đó là đáng sợ và may mắn là không thể.
Không có tùy chọn trong javascript để tìm chiều cao của chiều cao iframe tên miền chéo nhưng bạn có thể thực hiện điều gì đó như thế này với sự trợ giúp của một số chương trình phía máy chủ. Tôi đã sử dụng PHP cho ví dụ này
<?php
$output = file_get_contents('http://yourdomain.com');
?>
<div id='iframediv'>
<?php echo $output; ?>
</div>
<iframe style='display:none' id='iframe' src="http://yourdomain.com" width="100%" marginwidth="0" height="100%" marginheight="0" align="top" scrolling="auto" frameborder="0" hspace="0" vspace="0"> </iframe>
<script>
if(window.attachEvent) {
window.attachEvent('onload', iframeResizer);
} else {
if(window.onload) {
var curronload = window.onload;
var newonload = function(evt) {
curronload(evt);
iframeResizer(evt);
};
window.onload = newonload;
} else {
window.onload = iframeResizer;
}
}
function iframeResizer(){
var result = document.getElementById("iframediv").offsetHeight;
document.getElementById("iframe").style.height = result;
document.getElementById("iframediv").style.display = 'none';
document.getElementById("iframe").style.display = 'inline';
}
</script>
- 1. iframe chiều cao động chiều cao miền chéo bằng cách sử dụng jquery.ba-postmessage
- 2. Kịch bản iframe tên miền chéo jQuery
- 3. Tên miền chéo trong iframe Safari
- 4. Cách sử dụng yêu cầu đăng iframe (tên miền chéo)?
- 5. Vấn đề iframe miền chéo
- 6. Chiều cao động của iframe
- 7. Làm cách nào để có được tên miền chính trong iframe với tên miền chéo?
- 8. Truy cập cửa sổ mẹ từ iframe (tên miền chéo)
- 9. Truy cập thuộc tính IFrame tên miền chéo từ JavaScript
- 10. Sự cố miền chéo với iframe
- 11. Làm cách nào để thay đổi kiểu của tên miền chéo nội dung iframe?
- 12. Yêu cầu miền chéo/tấn công tên miền chéo/giao thức tên miền chéo
- 13. Cookie tên miền chéo
- 14. Viết kịch bản trang web chéo trên cùng một tên miền, các tên miền phụ khác nhau
- 15. Python cách lấy tên miền của cookie
- 16. Tìm url src hiện tại iframe trong miền chéo
- 17. Cách lấy chiều rộng và chiều cao của hình ảnh?
- 18. Cách lấy chiều rộng/chiều cao của văn bản
- 19. Làm cách nào để thay đổi chiều cao của iframe dựa trên conent động trong iframe?
- 20. Phát hiện thay đổi hướng từ trong iframe tên miền chéo
- 21. Kiểm soát chiều cao iframe bằng jQuery
- 22. cookie tên miền chéo Rails 3
- 23. iframe nhắn miền chéo với jQuery postMessage Plugin
- 24. Lấy chiều cao NSString
- 25. IFrame chính xác có thể làm gì với đối tượng trên cùng.Location (tên miền chéo)?
- 26. truy cập tên miền chéo trong iframe từ trẻ em đến phụ huynh
- 27. Kéo và thả các tên miền chéo, iframe, cửa sổ trình duyệt
- 28. Lấy chiều cao/chiều rộng của cửa sổ WPF
- 29. Cách lấy x% chiều cao trong px?
- 30. Gọi hàm auth cơ bản của tên miền chéo JQuery