234 lines
11 KiB
HTML
234 lines
11 KiB
HTML
|
<!DOCTYPE html>
|
||
|
<html>
|
||
|
|
||
|
<head>
|
||
|
<meta charset="UTF-8">
|
||
|
<title></title>
|
||
|
<link href="css/bootstrap.min.css" rel="stylesheet">
|
||
|
<link href="css/app.css" rel="stylesheet">
|
||
|
<link href="css/roundslider.min.css" rel="stylesheet">
|
||
|
<script src="js/jquery-3.7.1.js"></script>
|
||
|
<script src="js/roundslider.min.js"></script>
|
||
|
</head>
|
||
|
|
||
|
<body class="h-100 text-center text-bg-dark content-warp">
|
||
|
<div class="d-flex w-100 h-100 mx-auto flex-column">
|
||
|
<header class="mb-auto pb-5">
|
||
|
<div class="dotblock d-flex justify-content-between px-5 py-4">
|
||
|
<div class="fs-3">GEAZAN</div>
|
||
|
<div></div>
|
||
|
</div>
|
||
|
<div class="d-flex justify-content-center fw-bold border-black nav">
|
||
|
<div class="">
|
||
|
<a href="home.html">HOME</a>
|
||
|
</div>
|
||
|
<div class="active"><a href="filter.html">FILTER</a></div>
|
||
|
<div class=""><a href="fs.html">FS</div>
|
||
|
<div class=""><a href="eq.html">EQ</a></div>
|
||
|
<div class=""><a href="ducking.html">DUCKING</a></div>
|
||
|
<div class=""><a href="network.html">NETWORK</a></div>
|
||
|
<div class="">
|
||
|
<a href="security.html">SECURITY</a>
|
||
|
</div>
|
||
|
<div class=""><a href="control.html">CONTROL</a></div>
|
||
|
<div class="last"><a href="system.html">SYSTEM</a></div>
|
||
|
</div>
|
||
|
</header>
|
||
|
<main class="px-3 d-flex justify-content-center">
|
||
|
<div class="content-container">
|
||
|
<div class="d-flex">
|
||
|
<div class="me-3"
|
||
|
style="border-left: 2px solid #000;border-right: 2px solid #000;border-bottom: 2px solid #000;">
|
||
|
<div class="divider">
|
||
|
<div class="divider-text"><span class="fw-bold">Mic1 Hight Pass Filter</span></div>
|
||
|
</div>
|
||
|
<div class="p-3 d-flex justify-content-center">
|
||
|
<div style="width: 200px;">
|
||
|
<div class="d-flex justify-content-center align-items-center" style="height: 30px;">
|
||
|
<div class="d-flex redio-switche">
|
||
|
<input type="radio" class="btn-check" name="input1" id="inline1-on"
|
||
|
autocomplete="off">
|
||
|
<label class="btn btn-sm redio-btn on-btn" for="inline1-on">ENABLE</label>
|
||
|
|
||
|
<input type="radio" class="btn-check" name="input1" id="inline1-off"
|
||
|
autocomplete="off">
|
||
|
<label class="btn btn-sm redio-btn off-btn" for="inline1-off">DISABLE</label>
|
||
|
</div>
|
||
|
|
||
|
</div>
|
||
|
<div class="mt-3">
|
||
|
<label style="font-size:14px; color: #888;" class="me-2">Type</label>
|
||
|
<select class="select">
|
||
|
<option>Bessel</option>
|
||
|
<option>Butterworth</option>
|
||
|
<option>Linkwitz-riley</option>
|
||
|
</select>
|
||
|
</div>
|
||
|
<div class="row _slider_customizations cus_handle mb-4">
|
||
|
<div class="block mt-4">
|
||
|
<div class="cell d-flex justify-content-center">
|
||
|
<div style="top: 100px; right: -20; width: 50px; position:relative;color: #888;"
|
||
|
class="text-end">20</div>
|
||
|
<div id="handle1" class="roundSlider"></div>
|
||
|
<div
|
||
|
style="top: 100px; left: -10px; width: 50px; position:relative;color: #888;">
|
||
|
2000
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="">
|
||
|
<input class="slider-value" style="width: 55px; text-align: center;" value="7FS" />
|
||
|
</div>
|
||
|
<div class="mt-1" style="color: #888;">
|
||
|
HPF(Hz)
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="me-3"
|
||
|
style="border-left: 2px solid #000;border-right: 2px solid #000;border-bottom: 2px solid #000;">
|
||
|
<div class="divider">
|
||
|
<div class="divider-text"><span class="fw-bold">Mic2 Hight Pass Filter</span></div>
|
||
|
</div>
|
||
|
<div class="p-3 d-flex justify-content-center">
|
||
|
<div style="width: 200px;">
|
||
|
<div class="d-flex justify-content-center align-items-center" style="height: 30px;">
|
||
|
<div class="d-flex redio-switche">
|
||
|
<input type="radio" class="btn-check" name="input1" id="inline1-on"
|
||
|
autocomplete="off">
|
||
|
<label class="btn btn-sm redio-btn on-btn" for="inline1-on">ENABLE</label>
|
||
|
|
||
|
<input type="radio" class="btn-check" name="input1" id="inline1-off"
|
||
|
autocomplete="off">
|
||
|
<label class="btn btn-sm redio-btn off-btn" for="inline1-off">DISABLE</label>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="mt-3">
|
||
|
<label style="font-size:14px; color: #888;" class="me-2">Type</label>
|
||
|
<select class="select">
|
||
|
<option>Bessel</option>
|
||
|
<option>Butterworth</option>
|
||
|
<option>Linkwitz-riley</option>
|
||
|
</select>
|
||
|
</div>
|
||
|
<div class="row _slider_customizations cus_handle mb-4">
|
||
|
<div class="block mt-4">
|
||
|
<div class="cell d-flex justify-content-center">
|
||
|
<div id="handle2" class="roundSlider"></div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="">
|
||
|
<input class="slider-value" style="width: 55px; text-align: center;" value="7FS" />
|
||
|
</div>
|
||
|
<div class="mt-1" style="color: #888;">
|
||
|
HPF(Hz)
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
<div class="row d-flex">
|
||
|
</div>
|
||
|
</div>
|
||
|
</main>
|
||
|
|
||
|
<footer class="mt-auto text-white-50">
|
||
|
<div class="dotblock d-flex justify-content-between px-5 py-4">
|
||
|
<div class="">Geazan</div>
|
||
|
<div>www.geazan.com</div>
|
||
|
</div>
|
||
|
</footer>
|
||
|
</div>
|
||
|
</body>
|
||
|
|
||
|
<script>
|
||
|
|
||
|
let app = (() => {
|
||
|
|
||
|
function updateSlider(element) {
|
||
|
if (element) {
|
||
|
|
||
|
let parent = element.parentElement,
|
||
|
lastValue = parent.getAttribute('data-slider-value');
|
||
|
let container = parent.parentElement.parentElement.parentElement.parentElement.parentElement;
|
||
|
|
||
|
console.log(`${lastValue}===${element.value}}`)
|
||
|
// if (lastValue === element.value) {
|
||
|
// return; // No value change, no need to update then
|
||
|
// }
|
||
|
|
||
|
parent.setAttribute('data-slider-value', element.value);
|
||
|
let $thumb = parent.querySelector('.range-slider-thumb'),
|
||
|
$bar = parent.querySelector('.range-slider-bar'),
|
||
|
$value = container.querySelector('.slider-value')
|
||
|
console.log(`${element.value},${parent.clientHeight},${$thumb.clientHeight}}`)
|
||
|
console.log(`===${((parent.clientHeight - $thumb.clientHeight) / parent.clientHeight)}===`)
|
||
|
pct = element.value * ((parent.clientHeight - $thumb.clientHeight) / parent.clientHeight);
|
||
|
|
||
|
|
||
|
|
||
|
$thumb.style.bottom = `${pct}%`;
|
||
|
$bar.style.height = `calc(${pct}% + ${$thumb.clientHeight / 2}px)`;
|
||
|
$value.value = `${((element.value * (60 / 100)) - 60).toFixed(1)}dB`;
|
||
|
}
|
||
|
}
|
||
|
return {
|
||
|
updateSlider: updateSlider
|
||
|
};
|
||
|
|
||
|
})();
|
||
|
|
||
|
(function initAndSetupTheSliders() {
|
||
|
const inputs = [].slice.call(document.querySelectorAll('.volume-slider-container .volume-slider input'));
|
||
|
inputs.forEach(input => input.setAttribute('value', '50'));
|
||
|
inputs.forEach(input => app.updateSlider(input));
|
||
|
// Cross-browser support where value changes instantly as you drag the handle, therefore two event types.
|
||
|
inputs.forEach(input => input.addEventListener('input', element => app.updateSlider(input)));
|
||
|
inputs.forEach(input => input.addEventListener('change', element => app.updateSlider(input)));
|
||
|
})();
|
||
|
|
||
|
$("#handle1").roundSlider({
|
||
|
sliderType: "min-range",
|
||
|
editableTooltip: false,
|
||
|
radius: 60,
|
||
|
width: 10,
|
||
|
value: 0,
|
||
|
min:20,
|
||
|
max:2000,
|
||
|
step:1,
|
||
|
handleSize: 0,
|
||
|
handleShape: "square",
|
||
|
circleShape: "pie",
|
||
|
startAngle: 315,
|
||
|
tooltipFormat: "changeTooltip",
|
||
|
mouseScrollAction: true
|
||
|
});
|
||
|
|
||
|
function changeTooltip(e) {
|
||
|
var val = e.value, speed;
|
||
|
// if (val < 20) speed = "Slow";
|
||
|
// else if (val < 40) speed = "Normal";
|
||
|
// else if (val < 70) speed = "Speed";
|
||
|
// else speed = "Very Speed";
|
||
|
|
||
|
// return val + " km/h" + "<div>" + speed + "<div>";
|
||
|
}
|
||
|
|
||
|
$("#handle2").roundSlider({
|
||
|
sliderType: "min-range",
|
||
|
editableTooltip: false,
|
||
|
radius: 60,
|
||
|
width: 10,
|
||
|
value: 0,
|
||
|
handleSize: 0,
|
||
|
handleShape: "square",
|
||
|
circleShape: "pie",
|
||
|
startAngle: 315,
|
||
|
tooltipFormat: "changeTooltip",
|
||
|
mouseScrollAction: true
|
||
|
});
|
||
|
</script>
|
||
|
|
||
|
</html>
|