-
Notifications
You must be signed in to change notification settings - Fork 0
/
script.js
46 lines (40 loc) · 1.25 KB
/
script.js
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
const HEXMAP = "0123456789ABCDEF".split("");
document.querySelector("button").onclick = generateHexVal;
document.querySelector("span").onclick = NotificationSlide;
function generateHexVal() {
let randomVals = [],
HEXVAL = ["#"];
while (randomVals.length < 6) {
randomVals.push(randomNumber(16));
}
randomVals.forEach((val) => {
HEXVAL.push(HEXMAP[val]);
});
updateUI(HEXVAL.join(""));
return true;
}
function randomNumber(MAX) {
return Math.floor(Math.random() * Math.floor(MAX));
}
function updateUI(HEXVAL) {
updateBackgroundColor(HEXVAL);
updateHexCode(HEXVAL);
}
function updateBackgroundColor(HEXVAL) {
document.body.style.backgroundColor = HEXVAL;
document.getElementById("themeColor").content = HEXVAL;
}
function updateHexCode(HEXVAL) {
document.getElementById("HexVal").innerText = HEXVAL;
}
function NotificationSlide() {
const NOTIFICATION = document.getElementById('Notification'),
HEXVALUE = document.querySelector('span').innerText;
HOLDER = document.getElementById('ValueHolder');
NOTIFICATION.style.top = "20px";
setTimeout(()=>{NOTIFICATION.style.top = "-8.5vh"}, 2000);
HOLDER.value = HEXVALUE;
HOLDER.select();
HOLDER.setSelectionRange(0, 99999);
document.execCommand("copy");
}