-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathoptions.js
More file actions
64 lines (64 loc) · 1.83 KB
/
options.js
File metadata and controls
64 lines (64 loc) · 1.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
const storage = localStorage;
/**
* Replace the normal `console.error()` to check for unexpected errors.
* @param {*} err
*/
console.error = function(err) {
if(err.includes("onmousedown") || err.includes("addEventListener")) {
alert("Please reload this page.");
} else {
console.warn("ERROR: "+err);
}
}
const options = document.querySelectorAll("[option-id]");
options.forEach(elm => {
const attr = "inject-js:"+elm.getAttribute("option-id");
if(storage.getItem(attr) !== null) {
if(storage.getItem(attr).toString() == "true") {
elm.setAttribute("checked", "checked");
}
}
});
options.forEach(elm => {
elm.addEventListener("click", function () {
storage.setItem("inject-js:"+this.getAttribute("option-id"), this.checked);
});
});
document.querySelector(".return-form").addEventListener("click", function() {
if(document.referrer === "") {
location = location.origin;
} else {
history.go(-1);
}
});
dragElement(document.querySelector(".injectjs-options"));
function dragElement(elmnt) {
var pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0;
if (document.querySelector(".js-header")) {
document.querySelector(".js-header").onmousedown = dragMouseDown;
} else {
elmnt.onmousedown = dragMouseDown;
}
function dragMouseDown(e) {
e = e || window.event;
e.preventDefault();
pos3 = e.clientX;
pos4 = e.clientY;
document.onmouseup = closeDragElement;
document.onmousemove = elementDrag;
}
function elementDrag(e) {
e = e || window.event;
e.preventDefault();
pos1 = pos3 - e.clientX;
pos2 = pos4 - e.clientY;
pos3 = e.clientX;
pos4 = e.clientY;
elmnt.style.top = (elmnt.offsetTop - pos2) + "px";
elmnt.style.left = (elmnt.offsetLeft - pos1) + "px";
}
function closeDragElement() {
document.onmouseup = null;
document.onmousemove = null;
}
}