[英]Fetching inner element of Iframe
我有一個簡單的html頁面。 它有一個iframe到其他網站。 我想更改iframe中的nesteed錨標記的顏色。 可以通過javascript訪問Iframe元素
如果其他頁面位於其他域中,則由於跨域安全性,將無法從主頁面編輯iframe的HTML內容。
有解決方法,例如在URL中編寫要進行的更改。 但這真的很臟。
如果它在同一個域中,我建議使用,例如:
$('div', $('iframe')[0].contentWindow.document)
獲取iframe中的所有div元素
我是通過使用以下代碼完成的
function loadFrame(){document.getElementById('pcl_frame')。contentWindow.document.getElementsByTagName('a')[0] .style.color ='blue'; }你需要JavaScript。 它與在父頁面中執行的操作相同,除非您必須在JavaScript命令前添加iframe的名稱。
請記住,相同的原始策略適用,因此您只能對iframe來自您自己的服務器執行此操作。
frame1.$('mydiv').style.border='1px solid #000000'
要么
frame1.$('mydiv').addClassName('withborder')
您可以使用iframe獲取elemets的值
$('#iframeId').contents().find('#id-of-element-inside-iframe');
但價值觀無法改變。
只有一個簡單的解決方案,只有在擁有iframe中的內容時才能使用。
在您的父源中添加:
<script type="text/javascript">
var innerDocument = null;
</script>
在你的iframe中添加:
<script type="text/javascript">
parent.innerDocument = document;
</script>
加載iframe后,您現在可以使用innerDocument來定位iframe的文檔。 這規避了跨域安全性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.