2
私は、QWeb Viewブラウザを備えたPYQT pythonで小さなデスクトップアプリケーションを作成しています。私はこのブラウザに、マウスを使ってテキストを選択し、右クリックしてshow xpathを押すと、xpathを見つけるためにjavascriptが実行されるという機能を追加しています。ここ は私のコードです:PyQtでjqueryが動作しない
@pyqtSlot()
def slotshowxpath(self):
text = self.selectedText()
if not text:
QMessageBox.information(self,"information","No Text Selected")
else:
frame = self.page().mainFrame().documentElement()
#print frame.toHtml()
#abc = frame.document()
#abc.evaluateJavaScript("alert('"+self.page().selectedHtml()+"');")
frame.evaluateJavaScript("""var data = window.getSelection().anchorNode.parentNode; getXPath(data);
function getXPath(element){
alert(element);
var xpath = '';
for (; (element && element.nodeType) == 1; element = element.parentNode)
{
var id = $(element.parentNode).children(element.tagName).index(element) + 1;
id > 1 ? (id = '[' + id + ']') : (id = '');
xpath = '/' + element.tagName.toLowerCase() + id + xpath;
}
alert(xpath);
return xpath;
}"""
)
このクエリは$(element.parentNode).children
まで良い作業が、$(element.parentNode).children(element.tagName).index(element) + 1
のために働いていない、誰もがこの問題を修正するには私を助けることができるのですか?そう、
jqueryのを作業を開始しますダウンロードして実行しなくても動作しません –