Add transparency slider for canvas background color and remove unnecessary bits of code
This commit is contained in:
parent
e486ebd344
commit
d83c0f6f6d
2 changed files with 31 additions and 10 deletions
|
|
@ -36,6 +36,8 @@
|
||||||
|
|
||||||
<div class="grid-input">
|
<div class="grid-input">
|
||||||
<h3 class="tool-labels">Grid Tools</h3>
|
<h3 class="tool-labels">Grid Tools</h3>
|
||||||
|
<label class="sub-labels" for="canvas-trans">Canvas Transparency: <span id="trans-label"></span></label>
|
||||||
|
<input name="canvas-trans" id="canvas-trans" type="range" min="0" max="1" step=".1" value="1">
|
||||||
<div class="grid-tools">
|
<div class="grid-tools">
|
||||||
<div class="slider">
|
<div class="slider">
|
||||||
<label class="sub-labels" for="gridSlider">Grid Size: <span id="sliderLabel"></span></label>
|
<label class="sub-labels" for="gridSlider">Grid Size: <span id="sliderLabel"></span></label>
|
||||||
|
|
|
||||||
37
script.js
37
script.js
|
|
@ -10,6 +10,8 @@ const buttons = document.querySelectorAll(".pen");
|
||||||
const colorPicker = document.querySelector("#custom-color");
|
const colorPicker = document.querySelector("#custom-color");
|
||||||
let colorValue;
|
let colorValue;
|
||||||
const backColorPicker = document.querySelector("#back-col-picker");
|
const backColorPicker = document.querySelector("#back-col-picker");
|
||||||
|
const transLabel = document.querySelector("#trans-label");
|
||||||
|
const transSlider = document.querySelector("#canvas-trans");
|
||||||
const reset = document.querySelector("#reset");
|
const reset = document.querySelector("#reset");
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -34,10 +36,9 @@ buttons.forEach((button) => {
|
||||||
colorPicker.addEventListener("input", changeColor);
|
colorPicker.addEventListener("input", changeColor);
|
||||||
colorPicker.addEventListener("change", changeColor);
|
colorPicker.addEventListener("change", changeColor);
|
||||||
backColorPicker.addEventListener("input", pickBackground);
|
backColorPicker.addEventListener("input", pickBackground);
|
||||||
reset.addEventListener("click", resetGrid);
|
transSlider.addEventListener("input", adjustTransparency);
|
||||||
|
|
||||||
gridSlider.addEventListener("input", getGridDimensions);
|
gridSlider.addEventListener("input", getGridDimensions);
|
||||||
gridSlider.addEventListener("change", getGridDimensions);
|
|
||||||
rangeKnob.addEventListener("mousedown", (e) => {
|
rangeKnob.addEventListener("mousedown", (e) => {
|
||||||
document.addEventListener("mousemove", rotateKnob);
|
document.addEventListener("mousemove", rotateKnob);
|
||||||
document.addEventListener("mouseup", () => {
|
document.addEventListener("mouseup", () => {
|
||||||
|
|
@ -45,6 +46,8 @@ rangeKnob.addEventListener("mousedown", (e) => {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
reset.addEventListener("click", resetGrid);
|
||||||
|
|
||||||
|
|
||||||
function resetGrid() {
|
function resetGrid() {
|
||||||
gridSlider.value = gridSlider.defaultValue;
|
gridSlider.value = gridSlider.defaultValue;
|
||||||
|
|
@ -86,7 +89,6 @@ function updateGridSlider(angle) {
|
||||||
|
|
||||||
|
|
||||||
function getGridDimensions(val) {
|
function getGridDimensions(val) {
|
||||||
//numGrid = gridSlider.value;
|
|
||||||
numGrid = val;
|
numGrid = val;
|
||||||
|
|
||||||
while (container.firstChild) {
|
while (container.firstChild) {
|
||||||
|
|
@ -144,6 +146,23 @@ function pickBackground() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function adjustTransparency() {
|
||||||
|
const currentColor = container.style.backgroundColor;
|
||||||
|
let num = currentColor.match(/\d+/g);
|
||||||
|
let r;
|
||||||
|
let g;
|
||||||
|
let b;
|
||||||
|
let a;
|
||||||
|
|
||||||
|
r = +num[0];
|
||||||
|
g = +num[1];
|
||||||
|
b = +num[2];
|
||||||
|
a = transSlider.value;
|
||||||
|
|
||||||
|
|
||||||
|
container.style.backgroundColor = `rgba(${r},${g},${b},${a})`;
|
||||||
|
}
|
||||||
|
|
||||||
function colorGrid() {
|
function colorGrid() {
|
||||||
if (isRgb) {
|
if (isRgb) {
|
||||||
this.style.backgroundColor = randomizeColor();
|
this.style.backgroundColor = randomizeColor();
|
||||||
|
|
@ -236,9 +255,9 @@ function tintColor(value) {
|
||||||
|
|
||||||
let num = value.match(/\d+/g);
|
let num = value.match(/\d+/g);
|
||||||
|
|
||||||
r = +num[0] + (0.25 * (255 - +num[0]));
|
let r = +num[0] + (0.25 * (255 - +num[0]));
|
||||||
g = +num[1] + (0.25 * (255 - +num[1]));
|
let g = +num[1] + (0.25 * (255 - +num[1]));
|
||||||
b = +num[2] + (0.25 * (255 - +num[2]));
|
let b = +num[2] + (0.25 * (255 - +num[2]));
|
||||||
|
|
||||||
return`rgb(${r},${g},${b})`;
|
return`rgb(${r},${g},${b})`;
|
||||||
}
|
}
|
||||||
|
|
@ -250,9 +269,9 @@ function shadeColor(value) {
|
||||||
}
|
}
|
||||||
|
|
||||||
let num = value.match(/\d+/g);
|
let num = value.match(/\d+/g);
|
||||||
r = +num[0] * .75;
|
let r = +num[0] * .75;
|
||||||
g = +num[1] * .75;
|
let g = +num[1] * .75;
|
||||||
b = +num[2] * .75;
|
let b = +num[2] * .75;
|
||||||
|
|
||||||
return`rgb(${r},${g},${b})`;
|
return`rgb(${r},${g},${b})`;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue