如何使用jQuery或javascript访问iframe的内容

我有一个加载页面的iframe,当单击一个按钮时,该页面会加载包含链接的动态内容。 我需要将所有这些链接的目标从_blank更改为_self – 但我完全停留在每次在iframe中加载新内容时如何运行代码。 我已经尝试了很多选项,最新的是将iframe函数添加到iframe作为运行代码的触发器:

 $("#myFrame").click(function () { $('#myFrame').find('a[target="_blank"]').each(function () { $(this).attr('target', '_self'); }); }); 

一旦内容在iframe中加载完成后,如何查找动态生成的内容并更改链接目标? 由于iframe中的页面位于同一个域中,因此没有“同源策略”问题。

谢谢。

使用javaScript来获取iframe的DOM,如下所示:

 var doc=window.frames[ "yourFrameName" ].document 

注意:如果您遵循上述规则获取框架的DOM,请使用name而不是框架的idclass

将其更改为jquery对象

 var elem=$(doc); 

现在绑定elem上的click事件就像你在问题中的代码中一样

 elem.click(function () { elem.find('a[target="_blank"]').each(function () { $(this).attr('target', '_self'); }); }); 

您可以使用contents()方法

这是一个例子:

 $("#myiframe").contents().find("#myContent")