jQuery在iFrame内容中更改子元素

时间:2013-10-24 08:11:20

标签: jquery iframe

我有一个iFrame,它显示一个保存为html(同一个域)的Excel文件。我称之为:

<iframe id="nieuws" src="nieuws.htm" seamless ></iframe>

我想在Excel.html中显示与我所有人一样的超链接。 Excel中的所有链接都使用A标记中的SPAN标记进行格式化。像这样:

<a href="http://[HYPERLINK]">
<span style='font-size:12.0pt'>[TEXT HERE]</span>
</a> 

所以我这样做:

$('#nieuws').contents().find('a > span').css('font-size', '10pt');

但它不起作用。有人知道为什么吗?

2 个答案:

答案 0 :(得分:0)

页面上的每个iframe都有自己的DOM,iframe标记是当前页面的一部分,而不是其内容(因为其内容是另一个文档)。

我在这里已经回答了这类问题。您可以根据您的要求重构代码https://stackoverflow.com/a/19423398/1642219

修改

<iframe id="nieuws" src="nieuws.htm" onload=load()></iframe>

function load()
{
  var frm=document.getElementById('nieuws')

  var frmdoc=frm.contentDocument || frm.contentWindow.document;

  $(frmdoc).find('a span').css('font-size', '10pt')
}

答案 1 :(得分:0)

$(document.getElementById('iframename').contentWindow.document.body).find('font').attr("face", "Tahoma")