mirror of
https://github.com/gnh1201/welsonjs.git
synced 2025-02-06 15:04:58 +00:00
Update chrome.js
This commit is contained in:
parent
5d6968c518
commit
08c5cf7fc0
|
@ -565,7 +565,7 @@ var ChromeObject = function() {
|
|||
|
||||
if (this.debuggingPort > 0) {
|
||||
while (i < repeat) {
|
||||
this.evaluate('document.title = "' + title + '"');
|
||||
this.evaluate('document.title = ' + this.__escape(title));
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
@ -624,7 +624,7 @@ var ChromeObject = function() {
|
|||
var pos = -1;
|
||||
var s = '(function() {'
|
||||
+ ' var element = Object.values(__getDocument().querySelectorAll("' + selector + '")).find(function(x) {'
|
||||
+ ' return (x.innerText.indexOf(decodeURIComponent("' + encodeURIComponent(searchText) + '")) > -1);'
|
||||
+ ' return (x.innerText.indexOf(' + this.__escape() + ') > -1);'
|
||||
+ ' });'
|
||||
+ ' if (element) {'
|
||||
+ ' var rect = element.getBoundingClientRect();'
|
||||
|
@ -665,7 +665,7 @@ var ChromeObject = function() {
|
|||
s += '(function() {'
|
||||
+ ' var elements = Object.values(__getDocument().querySelectorAll("' + selector + '")).filter(function(x) {'
|
||||
+ ' var el = x.querySelector("' + subSelector + '");'
|
||||
+ ' var keywords = decodeURIComponent("' + encodeURIComponent(searchText) + '").trim().split(" ");'
|
||||
+ ' var keywords = ' + this.__escape(searchText) + '.trim().split(" ");'
|
||||
+ ' var text = el instanceof HTMLElement ? [el.innerText, el.getAttribute("aria-label"), el.getAttribute("class")].join(" ") : "";'
|
||||
+ ' return (text.split(" ").filter(function(w) { return keywords.indexOf(w) > -1; }).length >= keywords.length);'
|
||||
+ ' ' + (startIndex > 0 ? '}).slice(' + startIndex + ');' : '});')
|
||||
|
@ -723,7 +723,7 @@ var ChromeObject = function() {
|
|||
s += '(function() {'
|
||||
+ ' var elements = Object.values(__getDocument().querySelectorAll("' + selector + '")).filter(function(x) {'
|
||||
+ ' var el = x.querySelector("' + subSelector + '");'
|
||||
+ ' var searchText = decodeURIComponent("' + encodeURIComponent(searchText) + '").trim();'
|
||||
+ ' var searchText = ' + this.__escape(searchText) + '.trim();'
|
||||
+ ' var text = el instanceof HTMLElement ? [el.innerText, el.getAttribute("aria-label"), el.getAttribute("class")].join(" ") : "";'
|
||||
+ ' return (text.indexOf(searchText) > -1);'
|
||||
+ ' ' + (startIndex > 0 ? '}).slice(' + startIndex + ');' : '});')
|
||||
|
@ -774,7 +774,7 @@ var ChromeObject = function() {
|
|||
s += '(function() {'
|
||||
+ ' var elements = Object.values(__getDocument().querySelectorAll("' + selector + '")).filter(function(x) {'
|
||||
+ ' var el = x.querySelector("' + subSelector + '");'
|
||||
+ ' var keywords = decodeURIComponent("' + encodeURIComponent(searchText) + '").trim().split(" ");'
|
||||
+ ' var keywords = ' + this.__escape(searchText) + '.trim().split(" ");'
|
||||
+ ' var text = el instanceof HTMLElement ? [el.innerText, el.getAttribute("aria-label"), el.getAttribute("class")].join(" ") : "";'
|
||||
+ ' return (text.split(" ").filter(function(w) { return keywords.indexOf(w) > -1; }).length >= keywords.length);'
|
||||
+ ' ' + (startIndex > 0 ? '}).slice(' + startIndex + ');' : '});')
|
||||
|
@ -810,7 +810,7 @@ var ChromeObject = function() {
|
|||
s += '(function() {'
|
||||
+ ' var elements = Object.values(__getDocument().querySelectorAll("' + selector + '")).filter(function(x) {'
|
||||
+ ' var el = x.querySelector("' + subSelector + '");'
|
||||
+ ' var searchText = decodeURIComponent("' + encodeURIComponent(searchText) + '").trim();'
|
||||
+ ' var searchText = ' + this.__escape(searchText) + '.trim();'
|
||||
+ ' var text = el instanceof HTMLElement ? [el.innerText, el.getAttribute("aria-label"), el.getAttribute("class")].join(" ") : "";'
|
||||
+ ' return (text.indexOf(searchText) > -1);'
|
||||
+ ' ' + (startIndex > 0 ? '}).slice(' + startIndex + ');' : '});')
|
||||
|
@ -831,7 +831,7 @@ var ChromeObject = function() {
|
|||
+ ' var elements = Object.values(__getDocument().querySelectorAll("' + selector + '"));'
|
||||
+ ' var result = -1;'
|
||||
+ ' for (var i = 0; i < elements.length; i++) {'
|
||||
+ ' if (x.querySelector("' + subSelector + '").innerText.indexOf(decodeURIComponent("' + encodeURIComponent(searchText) + '")) > -1) {'
|
||||
+ ' if (x.querySelector("' + subSelector + '").innerText.indexOf(' + this.__escape(searchText) + ') > -1) {'
|
||||
+ ' result = i;'
|
||||
+ ' break;'
|
||||
+ ' }'
|
||||
|
@ -918,7 +918,7 @@ var ChromeObject = function() {
|
|||
this.triggerEventByFind = function(eventName, selector, searchText) {
|
||||
var s = '(function() {'
|
||||
+ ' var element = Object.values(__getDocument().querySelectorAll("' + selector + '")).find(function(x) {'
|
||||
+ ' return (x.innerText.indexOf(decodeURIComponent("' + encodeURIComponent(searchText) + '")) > -1);'
|
||||
+ ' return (x.innerText.indexOf(' + this.__escape(searchText) + ') > -1);'
|
||||
+ ' });'
|
||||
+ ' if (element) {'
|
||||
+ ' element.' + (eventName == 'click' ? 'click()' : 'dispatchEvent(new Event("' + eventName + '"))') + ';'
|
||||
|
@ -931,7 +931,7 @@ var ChromeObject = function() {
|
|||
this.triggerEventOnNestedFind = function(eventName, selector, subSelector, searchText) {
|
||||
var s = '(function() {'
|
||||
+ ' var element = Object.values(__getDocument().querySelectorAll("' + selector + '")).find(function(x) {'
|
||||
+ ' return (x.querySelector("' + subSelector + '").innerText.indexOf(decodeURIComponent("' + encodeURIComponent(searchText) + '")) > -1);'
|
||||
+ ' return (x.querySelector("' + subSelector + '").innerText.indexOf(' + this.__escape(searchText) + ') > -1);'
|
||||
+ ' });'
|
||||
+ ' if (element) {'
|
||||
+ ' element.' + (eventName == 'click' ? 'click()' : 'dispatchEvent(new Event("' + eventName + '"))') + ';'
|
||||
|
@ -980,7 +980,7 @@ var ChromeObject = function() {
|
|||
};
|
||||
|
||||
this.setValue = function(selector, value, repeat, searchIndex) {
|
||||
var s = encodeURIComponent(value),
|
||||
var s = value,
|
||||
i = 0,
|
||||
searchIndex = (typeof searchIndex !== "undefined" ? searchIndex : 0),
|
||||
repeat = (typeof repeat !== "undefined" ? repeat : 1)
|
||||
|
@ -988,9 +988,9 @@ var ChromeObject = function() {
|
|||
|
||||
while (i < repeat) {
|
||||
if (searchIndex > 0) {
|
||||
this.evaluate('Object.values(__getDocument().querySelectorAll("' + selector + '"))[' + searchIndex + '].value = decodeURIComponent("' + s + '");');
|
||||
this.evaluate('Object.values(__getDocument().querySelectorAll("' + selector + '"))[' + searchIndex + '].value = ' + this.__escape(s));
|
||||
} else {
|
||||
this.evaluate('__getDocument().querySelector("' + selector + '").value = decodeURIComponent("' + s + '")');
|
||||
this.evaluate('__getDocument().querySelector("' + selector + '").value = ' + this.__escape(s));
|
||||
}
|
||||
i++;
|
||||
}
|
||||
|
@ -1001,7 +1001,7 @@ var ChromeObject = function() {
|
|||
};
|
||||
|
||||
this.setHTML = function(selector, value, repeat, searchIndex) {
|
||||
var s = encodeURIComponent(value),
|
||||
var s = value,
|
||||
i = 0,
|
||||
searchIndex = (typeof searchIndex !== "undefined" ? searchIndex : 0),
|
||||
repeat = (typeof repeat !== "undefined" ? repeat : 1)
|
||||
|
@ -1009,9 +1009,9 @@ var ChromeObject = function() {
|
|||
|
||||
while (i < repeat) {
|
||||
if (searchIndex > 0) {
|
||||
this.evaluate('Object.values(__getDocument().querySelectorAll("' + selector + '"))[' + searchIndex + '].value = decodeURIComponent("' + s + '");');
|
||||
this.evaluate('Object.values(__getDocument().querySelectorAll("' + selector + '"))[' + searchIndex + '].value = ' + this.__escape(s));
|
||||
} else {
|
||||
this.evaluate('__getDocument().querySelector("' + selector + '").innerHTML = decodeURIComponent("' + s + '")');
|
||||
this.evaluate('__getDocument().querySelector("' + selector + '").innerHTML = ' + this.__escape(s));
|
||||
}
|
||||
i++;
|
||||
}
|
||||
|
@ -1038,6 +1038,10 @@ var ChromeObject = function() {
|
|||
return (elementPosition.y > 0 && (elementPosition.y + elementPosition.h < this.getWindowInnerHeight()));
|
||||
};
|
||||
|
||||
this.__escape = function(value) {
|
||||
return 'decodeURIComponent("' + encodeURIComponent(value) + '")';
|
||||
};
|
||||
|
||||
this.create();
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user