Что нового

[Окна, Диалоги] Получить текст выделения в окне IE

Vlasssov

Осваивающий
Сообщения
428
Репутация
25
Не знаю как правильно сформулировать, но попробую. Встала ребром вот такая задача.
Есть окно IE, либо помещенное на форму, ли просто в браузере открытое. Там требуется получить текст выделенного фрагмента. То есть выделяешь текст, щелкаешь на кнопочку он сохраняется. Вопрос, наверное, не совсем по IE, а скорей всего вообще по выделениям. Вот выделен в неком окне текст, как его программно получить? Какой-нибудь объект selection есть в api? Или в самом IE есть какой-нибудь метод, позволяющий работать с выделением.

p/s/ Нужен только текст. Картинки и формат rtf, не нужны.
 

inververs

AutoIT Гуру
Сообщения
2 135
Репутация
464
Re: [Окна, Диалоги] Получить ткуст выделения в окне IE

Есть, называется HTMLSelectionObject
и создается так: $oDoc.selection
В >IE9 есть HTMLSelection
и создается так: $oDoc.getSelection()

Через HTMLSelectionObject получить текст или html выделенного фрагмента можно так:
Код:
$oDoc = _IEDocGetObj($oIE)
$oHTMLTxtRange = $oDoc.selection.createRange()

$html = $oHTMLTxtRange.htmlText
$text = $oHTMLTxtRange.text

ConsoleWrite($html & @LF)
ConsoleWrite($text & @LF)



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

Начиная с версии IE 11, объект selection больше не поддерживается, и рекомендуется использовать getSelection
 

InnI

AutoIT Гуру
Сообщения
4 446
Репутация
1 205
Re: [Окна, Диалоги] Получить ткуст выделения в окне IE

Vlasssov [?]
выделен в неком окне текст, как его программно получить?
Скопировать в буфер обмена, отправив сочетание клавиш. Тем более, что функция
Код:
ClipGet()
возвращает только текст (без форматирования и картинок).
 
Верх