В настоящее время я пытаюсь немного настроить OpenCms (основанную на Java CMS с открытым исходным кодом), которая использует встроенный FCKEditor, к которому я пытаюсь получить доступ, используя js / jQuery.
Я пытаюсь получить html-содержимое iframe, но всегда получаю ноль в качестве возврата.Вот как я пытаюсь извлечь html-контент из iframe:
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 (!!)
Глядя на скриншот, я хочу получить доступ к html-разделу LargeNews1 / Teaser, который в настоящее время содержит значения.Лента новостей en ... ».Ниже вы также можете увидеть структуру html в Firebug.
Однако $(editFrame).contents().html()
возвращает ноль, и я не могу понять, почему, тогда как $(editFrame).attr('id')
возвращает правильный идентификатор.
iframecontent / FCKEditor находится на том же сайте / домене, межсайтовых проблем нет.
HTML-код iframe находится по адресу 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');