Я использую flask для создания будильника с web интерфейсом. Я создал вот такой html код:
<!-- (A) CURRENT TIME -->
<div id="ctime">
<link rel="stylesheet" href="{{ url_for('static', filename='styles/js-alarm-clock.css') }}"> >
<script src="{{ url_for('static', filename='js-alarm-clock.js') }}"></script>
<h1 class="header">THE CURRENT TIME</h1>
<div class="square">
<div class="digits" id="chr">00</div>
<div class="text">HR</div>
</div>
<div class="square">
<div class="digits" id="cmin">00</div>
<div class="text">MIN</div>
</div>
<div class="square">
<div class="digits" id="csec">00</div>
<div class="text">SEC</div>
</div>
</div>
<!-- (B) SET ALARM -->
<div id="tpick">
<h1 class="header">
SET ALARM
</h1>
<div id="tpick-h"></div>
<div id="tpick-m"></div>
<div id="tpick-s"></div>
<div>
<input type="button" value="Set" id="tset"/>
<input type="button" value="Reset" id="treset" disabled/>
</div>
</div>
<!-- (C) ALARM SOUND -->
<audio id="alarm-sound" loop>
<source src="wake-up-sound.mp3" type="audio/mp3">
</audio>
Также я сделал javascript
var ac = {
init : function () {
// ac.init() : start the alarm clock
// Get the current time - hour, min, seconds
ac.chr = document.getElementById("chr");
ac.cmin = document.getElementById("cmin");
ac.csec = document.getElementById("csec");
// The time picker - Hr, Min, Sec
ac.thr = ac.createSel(23);
document.getElementById("tpick-h").appendChild(ac.thr);
ac.thm = ac.createSel(59);
document.getElementById("tpick-m").appendChild(ac.thm);
ac.ths = ac.createSel(59);
document.getElementById("tpick-s").appendChild(ac.ths);
// The time picker - Set, reset
ac.tset = document.getElementById("tset");
ac.tset.addEventListener("click", ac.set);
ac.treset = document.getElementById("treset");
ac.treset.addEventListener("click", ac.reset);
// The alarm sound
ac.sound = document.getElementById("alarm-sound");
// Start the clock
ac.alarm = null;
setInterval(ac.tick, 1000);
},
createSel : function (max) {
// createSel() : support function - creates a selector for hr, min, sec
var selector = document.createElement("select");
for (var i=0; i<=max; i++) {
var opt = document.createElement("option");
i = ac.padzero(i);
opt.value = i;
opt.innerHTML = i;
selector.appendChild(opt);
}
return selector
},
padzero : function (num) {
// ac.padzero() : support function - pads hr, min, sec with 0 if <10
if (num < 10) { num = "0" + num; }
else { num = num.toString(); }
return num;
},
tick : function () {
// ac.tick() : update the current time
// Current time
var now = new Date();
var hr = ac.padzero(now.getHours());
var min = ac.padzero(now.getMinutes());
var sec = ac.padzero(now.getSeconds());
// Update current clock
ac.chr.innerHTML = hr;
ac.cmin.innerHTML = min;
ac.csec.innerHTML = sec;
// Check and sound alarm
if (ac.alarm != null) {
now = hr + min + sec;
if (now == ac.alarm) {
if (ac.sound.paused) {
ac.sound.play();
}
}
}
},
set : function () {
// ac.set() : set the alarm
ac.alarm = ac.thr.value + ac.thm.value + ac.ths.value;
ac.thr.disabled = true;
ac.thm.disabled = true;
ac.ths.disabled = true;
ac.tset.disabled = true;
ac.treset.disabled = false;
},
reset : function () {
// ac.reset() : reset the alarm
if (!ac.sound.paused) {
ac.sound.pause();
}
ac.alarm = null;
ac.thr.disabled = false;
ac.thm.disabled = false;
ac.ths.disabled = false;
ac.tset.disabled = false;
ac.treset.disabled = true;
}
};
// INIT - RUN ALARM CLOCK
window.addEventListener("load", ac.init);
И также я сделал функция во flask, чтобы при переходе по ссылке можно было бы поставить будильник. У меня вопрос, как я могу в питоне получить время, которое поставил пользователь, нажав кнопку set?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Имеется div в котором есть дочерние элементыВ дочерних элементах написано время (к примеру: 13:00, 14:00, 15:00), везде разное
Посчитайте сумму чисел на промежутке от 1 до 1000 включительноПотом посчитайте целую часть от деления этой суммы на число 1234, а так же остаток...
Видео воспроизводится, но не по кругу и показывает похожие в концеРаньше работало