timer-mit-prozessbalken-mit-oninput-event.php
Quell Code
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<style>
#helper{
position:absolute;
left:0px;
bottom:0px;
border:1px solid black;
height:30px;
width:300px;
overflow:hidden;
}
#conti{
position:relative;
top:0px;
left:0px;
height:30px;
width:10300px;
background:linear-gradient(
to right,
red 25%, orange 50%, yellow 70%,green 100%);
}
#aus{
position:absolute;
margin-left:130px;
font-size:25px;
font-weight:900;
}
#contibalken{
top:100px;
position:absolute;
left:calc(50% - 150px);
width:300px;
height:300px;
border:2px solid black;
text-align:center;
}
#contibalken p{
width:220px;
text-align:center;
font-weight:900;
font-size:25px;
margin:0;
margin-left:40px;
}
#sekundenbalken{
width:200px;
height:25px;
border:2px solid black;
border-radius:10px;
text-align:center;
font-size:20px;
font-weight:900;
margin-top:10px;
}
#hoverinfo{
display:none;
position:relative;
top:-120px;
left:10px;
background:black;
color:white;
padding:5px;
font-size:20px;
}
#contibalken:hover > #hoverinfo{
display:block;
}
#sekundenbalken:hover{
border:5px solid green;
}
#time,.blinkno{
font-size:30px;
color:black;
}
.blink{
animation:blinki linear forwards 1s infinite;
}
@keyframes blinki{
0%,49%,100%{
color:white;
}50%{
color:red;
}
}
#bastilink{
position:absolute;
bottom:20px;
left:40%;
}
</style>
</head>
<body>
<h1>Beschreibung</h1>
<ul>
<li>Eingabe von Sekunden.</li>
<li>Uhr läuft rückwärts.</li>
<li>Die letzten 10 Sekunden blinkt die Zeit.</li>
<li>Einfacher Neustart durch Oninput Event.</li>
<li>Restzeit wird nach Eingabe sofort angezeigt<br>auch wenn wärend des laufens eine neue Zeit eingegeben wird.</li>
<li>Je Höher die Sekunden Zahl um so mehr nach Komma stellen gibt es.</li>
<li>An 24 Stunden wird im Timer auch Tage angezeigt</li>
<li>Mfg Basti1012</li>
</ul>
<div id="contibalken">
<p>Prozess Balken</p>
<input type="number" id="sekundenbalken" value="" min="1" max="3600" step="1" value="10" placeholder="Sekunden...">
<div id="time"></div>
<div id="helper">
<div id="conti">
<div id="aus">0 %</div>
</div>
</div>
</div>
<script>
function los(a,sek){
if(sek>=86400){
var runden=6;
}else if(sek>=43200){
var runden=5;
}else if(sek>=21600){
var runden=4;
}else if(sek>=3600){
var runden=3;
}else if(sek>=1200){
var runden=2;
}else if(sek>=40){
var runden=1;
}else if(sek<=39){
var runden=0;
}
sekunden=sek;
var l=1000/sekunden;
if(a<=10000){
$('#conti').css('left','-'+a+'px');
a=a+l;
timer=setTimeout(function(){los(a,sek)},100)
a1=a/100;
a1=a1.toFixed(runden);
$('#aus').html(a1+' %')
a1=a-l;
$('#aus').css('left',''+a1+'px');
}else{
}
}
$('#sekundenbalken').on('input',function(){
try{
clearTimeout(timer1);
clearTimeout(timer);
}catch(e){}
los(1,this.value)
uhr(this.value);
});
function uhr(timeleft){
if(timeleft>=86400){
tage=Math.floor(timeleft/86400)+' Tage<br>';
}else{
tage='';
}
hour = Math.floor( timeleft /3600 )%24;
minute = Math.floor( (timeleft%3600) / 60 );
second = Math.floor( timeleft%60 );
if(hour<=9){
hour='0'+hour
}
if(minute<=9){
minute='0'+minute
}
if(second<=9){
second='0'+second
}
$('#time').html('Restzeit <br>'+tage+''+hour+'-'+minute+'-'+second);
if(timeleft<=0){
}else{
timer1=setTimeout(function(){uhr(timeleft-1)},1000);
}
if(timeleft>=1 && timeleft<=10){
$('#time').addClass('blink');
}else{
bli= $('#time').hasClass('blink');
if(bli==true){
$('#time').removeClass('blink');
$('#time').hasClass('blinkno');
}
}
}
</script>
<h1><a href="timer-mit-prozessbalken-mit-oninput-event.php?code=code" id="bastilink">Quellcode Prozess Balken</a></h1>
</body>
</html>
<?php
if(isset($_GET['code'])){
function lineNumber($file, $table, $print=false)
{
$content = highlight_file($file,TRUE);
$ex_line = file($file);
$lines = count($ex_line);
$length = strlen($lines);
for($x=1;$x<=$lines;$x++)
{
$ausgabe .= str_pad($x, $length, "0", STR_PAD_LEFT);
$ausgabe .= ":<br>";
}
$table = @preg_replace('/{lineNumber}/',$ausgabe,$table);
$table = @preg_replace('/{phpHighlight}/',$content,$table);
if($print === false)
{
return $table;
}
else
{
echo $table;
}
}
$table .= '<table><tr>';
$table .= '<td><code>';
$table .= '<span style="color: #AAAAAA;">{lineNumber}</span>';
$table .= '</code></td>';
$table .= '<td>{phpHighlight}</td>';
$table .= '</tr></table>';
$lineNum = lineNumber("timer-mit-prozessbalken-mit-oninput-event.php",$table,true);
}
?>