我目前正试图自定义OpenCms(基于Java的开源CMS),它使用嵌入的FCKEditor,这是我试图使用js/jQuery访问。使用jQuery获取iframe的html内容
我尝试获取iframe的html内容,但是总是得到null作为返回。 这是我尝试获取来自iframe的HTML内容:
var editFrame = document.getElementById('ta_OpenCmsHtml.LargeNews_1_.Teaser_1_.0___Frame');
alert($(editFrame).attr('id')); // returns the correct id
alert($(editFrame).contents().html()); // returns null (!!)
望着截图中,我要访问的是“LargeNews1 /传情” HTML部分,其目前持有的价值观“时事开讲恩...“。 下面你还可以看到Firebug中的html结构。
但是,$(editFrame).contents().html()
返回null,我不知道为什么,而$(editFrame).attr('id')
返回正确的ID。
iframe内容/ FCKEditor位于同一站点/域,不存在跨站点问题。
HTML代码为http://pastebin.com/hPuM7VUz
更新时间:
这里是一个可行的解决方案:
var editArea = document.getElementById('ta_OpenCmsHtml.LargeNews_1_.Teaser_1_.0___Frame').contentWindow.document.getElementById('xEditingArea');
$(editArea).find('iframe:first').contents().find('html:first').find('body:first').html('some <b>new</b><br/> value');
谢谢,许多有用的答复完全;我编辑了我的问题,并在底部添加了最终解决方案。 – 2012-01-11 09:36:16
这适用于Firefox,但不适用于Chrome。我刚刚得到
。 – user3411192 2016-09-07 21:02:40