Russian Qt Forum
Ноябрь 23, 2024, 22:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QWebElement, prependOutside и appendOutside  (Прочитано 3163 раз)
McFlooder
Гость
« : Ноябрь 27, 2010, 21:04 »

В общем, такое дело. Есть страничка, на этой страничке ссылки в виде картинок. Нужно некоторые ссылки поместить в div, чтобы выделить желтым.

Делаю так:
Код:
void Widget::on_webView_loadFinished(bool ok)
{
    QWebFrame *frame = ui->webView->page()->mainFrame();

    QWebElement document = frame->documentElement();
    QWebElementCollection elements = document.findAll("a");

    foreach (QWebElement element, elements) {
        if (element.attribute("href").contains("/selected/")) {
            element.prependOutside("<div style=\"padding:5px; background-color:yelow;\">");
            element.appendOutside("</div>");
        }
    }
}
Получается на выходе такой html код:
Код:
 <div style="padding:5px; background-color:yelow;"></div><a href="http://www.myhost.com/pages/60.htm">
         <img src="http://www.myhost.com/images/60.gif" alt="alt text" border="0">
 </a>
То есть все вставляется ДО тега <a>. Если вместо тегов в функциях поставить просто текст prepend и append, то они появляются до и после тега <a> как и положено. Ничего не пойму.  Непонимающий
Записан
sendevent
Гость
« Ответ #1 : Декабрь 07, 2010, 19:32 »

Код:
        foreach (QWebElement element, elements) {
        if (element.attribute("href").contains("/selected/")) {
            element.setStyleProperty( "background-color", m_markerColor.name() );
        }
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.044 секунд. Запросов: 20.