Skip to content

Instantly share code, notes, and snippets.

@tao4yu
tao4yu / getXpath.js
Last active January 31, 2021 01:01
function XPath(elm) {
for (segs = []; elm && elm.nodeType == 1; elm = elm.parentNode) {
if (elm.hasAttribute('id')) {
segs.unshift('id("' + elm.getAttribute('id') + '")')
return segs.join('/')
}
else if (elm.hasAttribute('class'))
segs.unshift(elm.localName.toLowerCase() + '[@class="' + elm.getAttribute('class') + '"]')
else {
for (i = 1, sib = elm.previousSibling; sib; sib = sib.previousSibling)
@tao4yu
tao4yu / PySide-QtWebKit-Qobject-JavaScript-Interaction.py
Last active December 27, 2015 01:59
PySide 本地 QObject 对象与 QtWebKit 中的JavaScript 对象之间的互操作。
# Add external css file to webkit
self.view.settings().setUserStyleSheetUrl(QtCore.QUrl.fromLocalFile("selectElem.css"))
# Add Local QObject and expose its slots and properties to JavaScript Context
self.view.page().currentFrame().addToJavaScriptWindowObject('htmlTextEdit', self.htmlTextEdit)
# Load Local jquery file to webkit
jqueryfile = QtCore.QFile("jquery-1.10.2.min.js");
jqueryfile.open(QtCore.QIODevice.ReadOnly | QtCore.QIODevice.Text);
jQueryJs = jqueryfile.readAll().data();
.elemHover {
border: #FF0000 solid thin;
background-color: #EEEE00;
}
.elemselected {
border: #FF3030 solid;
background-color: #90EE90;
background: #90EE90;
}
var flag1= null;
var flag2 = null;
$().ready(function(){
$("*").hover(function () {
if (flag1 != null) {
flag1.removeClass("elemHover");
}
flag1 = $(this);