Отображение выделенного текста в Qwebview с использованием JavaScript

Я пытаюсь отобразить выделенный текст в браузере QwebView с помощью JavaScript. но я не знаю, почему это не работает.. вот мой код:-

frame = self.page().mainFrame().documentElement()
frame.evaluateJavaScript("alert("+"'"+frame.getSelection().toString()+"'"+");")

когда я запускаю этот код, он показывает мне ошибку:-

Traceback (most recent call last):
File "GUI-Test.py", line 32, in slotshowxpath
frame.evaluateJavaScript("alert("+"'"+frame.getSelection().toString()+"'"+");")
AttributeError: 'QWebElement' object has no attribute 'getSelection'

1 ответ

Решение

Просто потому, что вы называете переменную frame:

frame = self.page().mainFrame().documentElement()

не означает, что это QWebFrame:

Каждый объект QWebPage содержит как минимум один кадр, основной кадр, полученный с помощью QWebPage.mainFrame ().

http://pyqt.sourceforge.net/Docs/PyQt4/qwebframe.html

Объект QWebElement обеспечивает легкий доступ к модели документа, представленной в виде древовидной структуры элементов DOM. Корень дерева называется элементом документа, и к нему можно получить доступ с помощью QWebFrame.documentElement ().

http://pyqt.sourceforge.net/Docs/PyQt4/qwebelement.html

Если вы посмотрите в класс QWebElement, то там нет метода с именем getSelection(),

Другие вопросы по тегам