Как поменять синий цвет и (интервал минуты 15m) в input time и д
Ответы (1 шт):
Автор решения: Проста Miha
→ Ссылка
Удачи ^-^
const time = document.querySelector(".time");
let createTimeHour = document.createElement("div");
createTimeHour.className = "time-hour";
createTimeHour.innerHTML = "--";
let createTimeMins = document.createElement("div");
createTimeMins.className = "time-mins";
createTimeMins.innerHTML = "--";
time.append(createTimeHour, time.children[time.children.length - 1]);
time.append(":", time.children[time.children.length - 1]);
time.append(createTimeMins, time.children[time.children.length - 1]);
const selectHourValue = document.querySelector(".time-hour");
const selectMinsValue = document.querySelector(".time-mins");
let createTimeSelect = document.createElement("div");
createTimeSelect.className = "select-time";
let createTimeSelectHour = document.createElement("div");
createTimeSelectHour.className = "select-time-hour";
for (let i = 1; i <= 24; i++) {
let createHourBlock = document.createElement("div");
createHourBlock.className = "select-time-hour-value";
createHourBlock.innerHTML = i;
createHourBlock.addEventListener("click", selectHour);
createTimeSelectHour.append(createHourBlock);
}
createTimeSelect.append(createTimeSelectHour);
let createTimeSelectMins = document.createElement("div");
createTimeSelectMins.className = "select-time-mins";
//Тут поменять i += 5 на i += 15 что-бы интервал был 15 мин
for (let i = 0; i <= 60; i += 5) {
let createMinsBlock = document.createElement("div");
createMinsBlock.className = "select-time-mins-value";
createMinsBlock.innerHTML = i;
createMinsBlock.addEventListener("click", selectMins);
createTimeSelectMins.append(createMinsBlock);
}
createTimeSelect.append(createTimeSelectMins);
time.append(createTimeSelect);
time.querySelector("img").addEventListener("click", function() {
this.parentElement.children[3].classList.toggle("select-time-active");
})
function selectHour() {
let hourValue = this.innerHTML > 9 ? this.innerHTML : "0" + this.innerHTML;
selectHourValue.innerHTML = hourValue;
for (let i = 0; i < this.parentElement.children.length; i++) {
this.parentElement.children[i].classList.remove("select-time-hour-active");
}
this.classList.add("select-time-hour-active");
}
function selectMins() {
let minsValue = this.innerHTML > 9 ? this.innerHTML : "0" + this.innerHTML;
selectMinsValue.innerHTML = minsValue;
for (let i = 0; i < this.parentElement.children.length; i++) {
this.parentElement.children[i].classList.remove("select-time-mins-active");
}
this.classList.add("select-time-mins-active");
}
body {
margin: 0;
width: 100%;
min-height: 100vh;
display: flex;
justify-content: center;
align-items: center;
}
* {
box-sizing: border-box;
}
.time {
position: relative;
display: flex;
justify-content: space-around;
box-shadow: 0 0 5px .1px rgba(0, 0, 0, .4);
align-items: center;
width: 120px;
height: 32px;
border: 1px solid gray;
}
.time div {
padding: 0 6px;
}
.time img {
height: 90%;
}
.select-time {
display: none;
background-color: #fff;
box-shadow: 0 0 8px 1px rgba(0, 0, 0, .4);
overflow: hidden;
position: absolute;
width: 100%;
top: calc(100% + 4px);
left: 0;
height: 320px;
border: 1px solid gray;
}
.select-time-hour,
.select-time-mins {
display: flex;
flex-direction: column;
align-items: center;
overflow-y: auto;
}
.select-time-hour div,
.select-time-mins div {
cursor: pointer;
width: 100%;
text-align: center;
padding: 6px 12px;
border-radius: 6px;
}
.select-time-hour-active,
.select-time-mins-active,
.select-time-hour div:hover,
.select-time-mins div:hover {
background-color: royalblue;
color: #fff;
}
.select-time-hour::-webkit-scrollbar,
.select-time-mins::-webkit-scrollbar {
display: none;
}
.select-time-active {
display: flex;
}
<div class="time">
<img src="https://img.icons8.com/fluency-systems-regular/32/000000/clock--v3.png" />
</div>
