Что нового

[Данные, строки] вставить текст в элемент кода iframe

kristow13

Новичок
Сообщения
76
Репутация
0
Добрый вечер.
В e.mail.ru при написании письма не могу вставить текст в окно где пишется текст письма...
По коду вижу, что это окно находится в iframe. И когда я хочу найти элемент по его class -у, то не выходит.
Вот код окна ввода текста:
Код:
<table id="compose_402_composeEditor_tbl" class="mceLayout" cellspacing="0" cellpadding="0" style="width: 100%; height: 481px;"><tbody><tr class="mceFirst mceLast"><td class="mceIframeContainer mceFirst mceLast"><iframe id="compose_402_composeEditor_ifr" src='javascript:""' frameborder="0" allowtransparency="true" title="{#aria.rich_text_area}" hidefocus="true" tabindex="10" scrolling="auto" style="width: 100%; height: 221px; display: block;"></iframe></td></tr></tbody></table>
А на скрине видно, что в iframe есть код.
Я пробовал вставлять текст в <body id="tinymce" class="mceContentBody " но не вышло...
Код:
<body id="tinymce" class="mceContentBody " onload="window.parent.tinyMCE.get('compose_402_composeEditor').onLoad.dispatch();" contenteditable="true" dir="ltr" style="overflow: auto;">


-- 
arh qwerty</body>

Помогите плиз....

Пробовал вот так:
Код:
$divs = _IETagNameGetCollection($oIE, 'body')
   For $div In $divs
	  If $div.classname == 'mceContentBody ' Then
        _IEDocInsertText($div,"тут текст письма!"&@CRLF&"еще текст, и ссылка на файл: "& $sLink, "afterbegin")
	  EndIf
   Next
 

Вложения

  • 2015-06-03_21-33-26.png
    2015-06-03_21-33-26.png
    97.7 КБ · Просмотры: 11
Автор
kristow13

kristow13

Новичок
Сообщения
76
Репутация
0
Garrett сказал(а):
Попробовал запустить в mail этот код, не сработал. Мне не совсем понятно образование команды:
Код:
$oIE.document.parentWindow.execScript("tinyMCE.activeEditor.setContent('<h2>AutoIt!</h2>')")

т.к. на странице www.tinymce.com есть редактор, код для той страницы работает. Но как его применить для себя не пойму....


Добавлено:
Сообщение автоматически объединено:

Пробовал как-нибудь прочитать iframe...
Выдает ошибки, и находит на странице 3 iframe
Код:
$oFrames = _IEFrameGetCollection ($oIE)
   $iNumFrames = @extended
   ConsoleWrite("$iNumFrames == "&$iNumFrames)
   For $i = 0 to ($iNumFrames - 1)
	  $oFrame = _IEFrameGetCollection ($oIE, $i)
	  ConsoleWrite( _IEPropertyGet ($oFrame, "outertext"))
   Next
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
kristow13 [?]
т.к. на странице www.tinymce.com есть редактор
Как ни странно, на Mail.ru tinymce тоже есть. ;)

С помощью скрипта:
1. Войдите в почтовый ящик.
2. Перейдите на страницу "Написать письмо".
3. Чтобы добавить текст в тело сообщения, выполните следующую строку кода:
Код:
; Ваш код выше
$oIE.document.parentWindow.execScript("tinyMCE.activeEditor.setContent('<h2>Hello AutoIt!</h2>')")
; Ваш код ниже
 

alex33

Скриптер
Сообщения
1,457
Репутация
186
А что если перейти на какую-нибудь мобильную версию и писать скрипт для неё? Я вот иногда так делаю, когда в полной версии сложно работать с элементами. В мобильной версии обычно всё на много легче бывает.
 
Автор
kristow13

kristow13

Новичок
Сообщения
76
Репутация
0
Garrett сказал(а):
kristow13 [?]
т.к. на странице www.tinymce.com есть редактор
Как ни странно, на Mail.ru tinymce тоже есть. ;)

С помощью скрипта:
1. Войдите в почтовый ящик.
2. Перейдите на страницу "Написать письмо".
3. Чтобы добавить текст в тело сообщения, выполните следующую строку кода:
Код:
; Ваш код выше
$oIE.document.parentWindow.execScript("tinyMCE.activeEditor.setContent('<h2>Hello AutoIt!</h2>')")
; Ваш код ниже

Я так и делал, но код не сработал.
Сейчас понял почему...
Я пробовал отправить текст с переменной...
Код:
$sLink = "второй текст"
$oIE.document.parentWindow.execScript("tinyMCE.activeEditor.setContent('текст...'&$sLink)")

А без переменной работает:
Код:
$oIE.document.parentWindow.execScript("tinyMCE.activeEditor.setContent('текст...')")

Подскажите как можно вставить текст вместе с переменной?
 

alex33

Скриптер
Сообщения
1,457
Репутация
186
kristow13 [?]
Подскажите как можно вставить текст вместе с переменной?
А если так?
Код:
$sLink = "второй текст"
$oIE.document.parentWindow.execScript("tinyMCE.activeEditor.setContent('текст..."&$sLink&"')")
 
Автор
kristow13

kristow13

Новичок
Сообщения
76
Репутация
0
alex33 сказал(а):
kristow13 [?]
Подскажите как можно вставить текст вместе с переменной?
А если так?
Код:
$sLink = "второй текст"
$oIE.document.parentWindow.execScript("tinyMCE.activeEditor.setContent('текст..."&$sLink&"')")
Да, спасибо.
Теперь все работает как хотел!
Спасибо всем за помощь! :beer:
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
kristow13 [?]
Теперь все работает как хотел!

[info border=#0000ff float=left]На форуме принято помечать тему решенной после получения ответа на свой вопрос!
Вверху или внизу темы нажмите на ссылку такого вида:
package_old.gif
Тема не решена
[/info]
 
Верх