Skip to content

Instantly share code, notes, and snippets.

View AirStair's full-sized avatar
🎯
Focusing

AirStair AirStair

🎯
Focusing
View GitHub Profile
function jsExceptionStore(JsException) {
var request = new XMLHttpRequest();
request.open('GET', 'js-exception-store?user_agent='.concat(navigator.userAgent, '&js_exception_message=', JsException.message, '&js_exception_file_name=', JsException.fileName, '&js_exception_line_number=', JsException.lineNumber), false);
request.send();
}
try {
throw 'JsException #0';
}
catch (e) {
function queryText(selector, text) {
try {
var elements = document.querySelectorAll(selector);
return Array.prototype.filter.call(elements, function (element) {
return RegExp(text).test(element.textContent);
});
} catch (e) {
console.log(e);
}
}
Document.prototype.transformProperty = function (selector, property, transformGetter, transformSetter) {
Object.defineProperty(document.querySelector(selector), property, {
get: function () {
return transformGetter(document.querySelector(selector).cloneNode()[property]);
},
set: function (value) {
let clone = document.querySelector(selector).cloneNode(true);
clone.value = transformSetter(value);
document.querySelector(selector).replaceWith(clone);
}
var send = XMLHttpRequest.prototype.send;
var params;
var sendNew;
XMLHttpRequest.prototype.send = function(data) {
params = new URLSearchParams(data);
if (new URLSearchParams(data).get('D') === '75') {
sendNew = function () {
params.set('PRICE', '9999');
send.call(this, params);
}.bind(this);
@AirStair
AirStair / sync.js
Last active February 20, 2020 16:31
try {
document.addEventListener('readystatechange', function () {
try {
if (document.readyState === 'interactive') {
let i = 0;
let Map_ = new Map();
let Headers_ = new Headers()
let DOMParser_ = new DOMParser();
let URLSearchParams_ = new URLSearchParams(location.search);
Headers_.set('Cache-Control', 'no-cache, no-store, must-revalidate');
const phoneMask = selector => {
const phoneElement = document.querySelector(selector);
phoneElement.addEventListener('keyup', () => {
const match = phoneElement.value.replace(/\D+/g, '').match(/(\d{1})(\d{3})(\d{3})(\d{2})(\d{2})/);
phoneElement.value = `${match[1]} (${match[2]}) ${match[3]}-${match[4]}-${match[4]}`;
});
};
Object.defineProperty(document.getElementById('test'), 'value', {
set: function(newValue) {
alert();
let node = document.getElementById('test').cloneNode(true);
node.value = newValue;
document.getElementById('test').parentNode.replaceChild(node, document.getElementById('test'));
},
});
document.getElementById('test').value = 'qeqw1e'
@AirStair
AirStair / gist:7bd74b050e24984ff331dabd812a83c9
Created April 15, 2020 17:12
nightmare js keyboard codes
browserWindow.webContents.sendInputEvent({
type: "keyDown",
keyCode: '\u0008'
});
browserWindow.webContents.sendInputEvent({
type: "keyUp",
keyCode: '\u0008'
});
Object.defineProperty(document.body, 'addEventListener', {
value: function (e, callback) {
callback({
target: {
value: 'hhhhh'
}
});
}
});
document.body.addEventListener('click', function (e) {