[GastForen Programmierung/Entwicklung JavaScript countdown

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

countdown

pat87
Beiträge gesamt: 581

30. Mai 2004, 12:21
Beitrag # 1 von 12
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo zusammen, kennt da jemand ein nettes script, mit dem ich einen countdown auf meine homepage einbauen kann, der dann die tage bis zu einem bestimmten datum herunterzählt?

vielen dank schon im voraus...

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/
X

countdown

SabineP
Beiträge gesamt: 7586

30. Mai 2004, 12:26
Beitrag # 2 von 12
Beitrag ID: #88059
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Pat, klar gibt´s das.
Lies mal hier nach:
http://www.hilfdirselbst.ch/...1&topic_id=16462

Gruß Sabine


als Antwort auf: [#88057]

countdown

pat87
Beiträge gesamt: 581

30. Mai 2004, 13:42
Beitrag # 3 von 12
Beitrag ID: #88063
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
es geht aber nicht... es steht immer 'undefined day'

an was liegt das?

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/


als Antwort auf: [#88057]

countdown

SabineP
Beiträge gesamt: 7586

30. Mai 2004, 20:29
Beitrag # 4 von 12
Beitrag ID: #88082
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Und wie sieht Dein Code aus? Gibt es einen Link dazu?
Gruß Sabine


als Antwort auf: [#88057]

countdown

pat87
Beiträge gesamt: 581

30. Mai 2004, 22:22
Beitrag # 5 von 12
Beitrag ID: #88091
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
der code sieht so aus: nein, es gibt (noch) keinen link...

<html>

<head>
<meta http-equiv="content-type" content="text/html;charset=ISO-8859-1">
<title>pat87.ch | home</title>
<link rel="SHORTCUT ICON" href="http://www.pat87.ch/...res/favicon.ico">
<script>
var futureyear=2004
var futuremonth=6
var futureday=24
var displaytype="showdays"
var digitordate="isdate"
var aftercountdown="stopit"
var digitfrom=100
var digitto=0
var speed=1

var countdownid=new Array()
var futuredate
var nowdate
var resulthoursraw
var resulthours
var resultminutesraw
var resultminutes
var resultsecondsraw
var resultseconds

var p_seconds
var p_minutes
var p_hours
var p_days

var resultsecondsonly
var resultminutesonly
var resulthoursonly
var content

var i_countdown=-1
var countdownid

var step=1
speed*=1000

if (digitfrom>digitto) {step=-1}
if (digitfrom<digitto) {step=1}

var browserinfos=navigator.userAgent
var ns4=document.layers
var ie4=!document.getElementById&&document.all&&!browserinfos.match(/Opera/)
var ie5=document.getElementById&&document.all&&!browserinfos.match(/Opera/)
var ns6=document.getElementById&&!document.all&&!browserinfos.match(/Opera/)
var opera=browserinfos.match(/Opera/)

function setfuturedate() {
futuredate=new Date(futureyear,futuremonth,futureday,0,0,0)
if (digitordate=="isdigit") {content=digitfrom-step }
docountdown()
}

function docountdown() {
if (digitordate=="isdate") {
calculateresults()
formatresults()
displayresults()
setTimeout("docountdown()",speed)
}
else if (digitordate=="isdigit") {
content+=step
displayresults()
if (content==digitto) {
setTimeout("happensafter()",speed)
}
else {
setTimeout("docountdown()",speed)
}
}
}

function firstcountdown() {
if (digitordate=="isdate") {
futuredate=new Date(futureyear,futuremonth,futureday,0,0,0)
calculateresults()
formatresults()
}
else if (digitordate=="isdigit") {
content=digitfrom
}
}

function calculateresults() {
nowdate=new Date()
resultdaysraw=(Date.parse(futuredate)-Date.parse(nowdate))/1000/60/60/24
if (displaytype!="showall") {
resultsecondsonly=Math.floor((Date.parse(futuredate)-Date.parse(nowdate))/1000)
resultminutesonly=Math.floor((Date.parse(futuredate)-Date.parse(nowdate))/1000/60)
resulthoursonly=Math.floor((Date.parse(futuredate)-Date.parse(nowdate))/1000/60/60)
}
else {
resultdays=Math.floor((Date.parse(futuredate)-Date.parse(nowdate))/1000/60/60/24)
resulthoursraw=(resultdaysraw-resultdays)*24
resulthours=Math.floor((resultdaysraw-resultdays)*24)
resultminutesraw=(resulthoursraw-resulthours)*60
resultminutes=Math.floor((resulthoursraw-resulthours)*60)
resultsecondsraw=(resultminutesraw-resultminutes)*60
resultseconds=Math.floor((resultminutesraw-resultminutes)*60)
}
}

function formatresults() {
if (displaytype=="showall") {
if (resultdays>1) {p_days="days"}
else {p_days="day"}
if (resultminutes<10) {resultminutes="0"+resultminutes}
if (resultseconds<10) {resultseconds="0"+resultseconds}
content=resultdays+" "+p_days+" "+resulthours+"h "+resultminutes+"m "+resultseconds +"s"
}
else if (displaytype=="showdays") {
if (resultdays>1) {p_days="days"}
else {p_days="day"}
content=resultdays+" "+p_days
}
else if (displaytype=="showhours") {
content=resulthoursonly+" hrs"
}
else if (displaytype=="showminutes") {
content=resultminutesonly+" min"
}
else if (displaytype=="showseconds") {
content=resultsecondsonly+" sec"
}
}

function happensafter() {
if (aftercountdown=="repeatit") {
if (digitordate=="isdigit") {content=digitfrom-step}
docountdown()
}
if (aftercountdown!="stopit" && aftercountdown!="repeatit") {
document.location.href=aftercountdown
}
}

function displayresults() {
if (ie4) {
for (i=0;i<=countdownid.length-1;i++) {
var thisclock=eval(countdownid)
thisclock.innerHTML=content
}
}
else {
for (i=0;i<=countdownid.length-1;i++) {
document.getElementById(countdownid).innerHTML=content
}
}
}

function setcountdown() {
if (ns4 || ie4 || ie5 || ns6 || opera) {
firstcountdown()
i_countdown++
countdownid[i_countdown]="countdown"+i_countdown
document.write("<span id='"+countdownid[i_countdown]+"' style='position:relative'>"+content+"</span>")
}
}

if (ie4 || ie5 || ns6 || opera) {
onload=setfuturedate
}
</script>
</span>
</head>

<body bgcolor="#ff9a2d" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width="100%" border="0" cellpadding="0" cellspacing="0" height="100%">
<tr>
<td valign="top" align="center">
<table width="720" border="0" cellspacing="0" cellpadding="0" height="300">
<tr>
<td valign="top" align="center">
<font size="2" face="verdana">
<table width="720" border="0" cellspacing="0" cellpadding="0" height="35">
<tr>
<td align="center" valign="top">
</td>
</tr>
</table>
</font>
<table width="720" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" valign="top">
<font face="verdana" size="1">
<script language="JavaScript">
today = new Date()
if(today.getMinutes() < 10){
pad = "0"}
else
pad = "";
document.write ;if((today.getHours() <=6) && (today.getHours() >=9)){
document.write("guten morgen")
}
if((today.getHours() >=10) && (today.getHours() <=11)){
document.write("guten morgen!")
}
if((today.getHours() >=12) && (today.getHours() <=16)){
document.write("einen sch&ouml;nen nachmittag w&uuml;nsche ich!")
}
if((today.getHours() >=17) && (today.getHours() <=23)){
document.write("guten abend!")
}
if((today.getHours() >=0) && (today.getHours() <=4)){
document.write("bist du nicht m&uuml;de um diese zeit?")
}
if((today.getHours() >=4) && (today.getHours() <=6)){
document.write("wow! du bist aber fr&uuml;h auf!")
}
</script>
</font>
<hr noshade size="1" width="85%">
</td>
</tr>
</table>

<table width="720" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center">
<font face="verdana" size="1"><marquee scrollamount="5" width="720" height="16" behavior="scroll" loop="infinite" align="middle">dvd-&uuml;bersicht ist neu gestaltet | dvd-&uuml;bersicht erh&auml;lt ein feedback-formular</marquee></font>
</td>
</tr>
</table>
</td>
</tr>
<tr><td align="center"><font face="verdana" size="1"><script>setcountdown()</script></font></td>/tr>
</table>
</td>
</tr>
</table>
</body>

</html>



mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/


als Antwort auf: [#88057]

countdown

SabineP
Beiträge gesamt: 7586

31. Mai 2004, 10:36
Beitrag # 6 von 12
Beitrag ID: #88117
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Pat, das Script ist leider fehlerhaft, so daß displaytype="showdays" nicht funktioniert.
Ändere diese Zeilen, dann klappt es:


function calculateresults() {
nowdate=new Date()
resultdaysraw=(Date.parse(futuredate)-Date.parse(nowdate))/1000/60/60/24
// if (displaytype!="showall") {
resultsecondsonly=Math.floor((Date.parse(futuredate)-Date.parse(nowdate))/1000)
resultminutesonly=Math.floor((Date.parse(futuredate)-Date.parse(nowdate))/1000/60)
resulthoursonly=Math.floor((Date.parse(futuredate)-Date.parse(nowdate))/1000/60/60)
// }
// else {
resultdays=Math.floor((Date.parse(futuredate)-Date.parse(nowdate))/1000/60/60/24)
resulthoursraw=(resultdaysraw-resultdays)*24
resulthours=Math.floor((resultdaysraw-resultdays)*24)
resultminutesraw=(resulthoursraw-resulthours)*60
resultminutes=Math.floor((resulthoursraw-resulthours)*60)
resultsecondsraw=(resultminutesraw-resultminutes)*60
resultseconds=Math.floor((resultminutesraw-resultminutes)*60)
// }
}

Gruß Sabine


als Antwort auf: [#88057]

countdown

pat87
Beiträge gesamt: 581

31. Mai 2004, 10:47
Beitrag # 7 von 12
Beitrag ID: #88120
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
jetzt geht es zwar, aber er zeigt mir auf den 24. 6. 2004 noch 53 tage an...

und wie kann ich es ändern, dass dort 'tage' und nich 'days' stehen?

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/


als Antwort auf: [#88057]
(Dieser Beitrag wurde von pat87 am 31. Mai 2004, 11:05 geändert)

countdown

pat87
Beiträge gesamt: 581

31. Mai 2004, 11:08
Beitrag # 8 von 12
Beitrag ID: #88122
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
das mit 'tagen' und nicht 'days' habe ich lösen können...

hier noch der link: http://www.pat87.ch/in_bearbeitung/ und zwar bei home ist es der mittlere frame...

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/


als Antwort auf: [#88057]

countdown

Anonym
Beiträge gesamt: 22827

31. Mai 2004, 11:18
Beitrag # 9 von 12
Beitrag ID: #88123
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Pat,

für den 24.6. 2004 schreibst Du in´s Script:

var futureyear=2004
var futuremonth=5
var futureday=24

Gruß Sabine


als Antwort auf: [#88057]

countdown

pat87
Beiträge gesamt: 581

31. Mai 2004, 11:25
Beitrag # 10 von 12
Beitrag ID: #88124
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen


als Antwort auf: [#88057]

countdown

SabineP
Beiträge gesamt: 7586

31. Mai 2004, 11:56
Beitrag # 11 von 12
Beitrag ID: #88132
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Weil der Januar der Monat 0 ist, futuremonth=0
Und jetzt frag mich bitte nicht, warum der Januar der Monat 0 ist. :-)
Das Script wurde so programmiert.

Gruß Sabine


als Antwort auf: [#88057]

countdown

pat87
Beiträge gesamt: 581

31. Mai 2004, 12:48
Beitrag # 12 von 12
Beitrag ID: #88139
Bewertung:
(3976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
ok, ich werde dich das nicht fragen...

aber, ...

noch vielen dank für die korrekturen dieses scriptes

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/


als Antwort auf: [#88057]
X

Aktuell

Farbmanagement
impressed_300

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
18.06.2024

Online
Dienstag, 18. Juni 2024, 10.00 - 10.30 Uhr

Webinar

In diesen beiden kostenlose Webinaren erfahren Sie, wie Sie mit Hilfe von Enfocus Griffin und dem Impressed Workflow Server Ihren LFP-Workflows optimieren können. 18.06.2024: So optimieren Sie Ihre Prozesse mit Enfocus Griffin 02.07.2024: So sparen Sie Zeit und Geld mit Impressed Workflow Server in der LFP-Edition Griffin: Griffin ist das leistungsstarke Kraftpaket für das automatische Nesting im Großformatdruck. Dank eines ausgeklügelten, KI-basierten Nesting-Algorithmus können Sie mit Griffin Vorlagen schnell und effizient vernutzen – und das klappt auch mit unregelmäßigen Formen perfekt. Das spart Ihnen unzählige Stunden, die Sie bisher mit dem manuellen Nesting und Ausschießen verbracht haben. Einige wichtige Funktionen ≡ Anlage von Beschnittzugaben ≡ Automatische Erzeugung der Schnittkontur ≡ Erstellung von Strichcodes, Textmarkierungen und Registrierungen IWS LFP Edition: Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Mit dem IWS LFP Edition automatisieren Sie Ihre Produktion von der Übernahme der Daten aus dem ERP-System bis zur Erzeugung der verschachtelten Druckform und der Übergabe an den RIP. Phoenix Core ist eine hochentwickelte KI-Technologie für die Planung und das Nesting von Druckerzeugnissen. Anders als herkömmliche Ausschießlösungen arbeitet Phoenix nicht auf Basis von Vorlagen, sondern erzeugt entsprechend der Maschinen- und Produktionsanforderungen druckfertige Layouts „on-the-fly“.

kostenlos

Ja

Organisator: Impressed GmbH

https://www.impressed.de/schulung.php?c=sDetail&sid=328

So optimieren Sie Ihren LFP-Workflow
Veranstaltungen
02.07.2024

Online
Dienstag, 02. Juli 2024, 10.00 - 10.30 Uhr

Webinar

In diesen beiden kostenlose Webinaren erfahren Sie, wie Sie mit Hilfe von Enfocus Griffin und dem Impressed Workflow Server Ihren LFP-Workflows optimieren können. 18.06.2024: So optimieren Sie Ihre Prozesse mit Enfocus Griffin 02.07.2024: So sparen Sie Zeit und Geld mit Impressed Workflow Server in der LFP-Edition Griffin: Griffin ist das leistungsstarke Kraftpaket für das automatische Nesting im Großformatdruck. Dank eines ausgeklügelten, KI-basierten Nesting-Algorithmus können Sie mit Griffin Vorlagen schnell und effizient vernutzen – und das klappt auch mit unregelmäßigen Formen perfekt. Das spart Ihnen unzählige Stunden, die Sie bisher mit dem manuellen Nesting und Ausschießen verbracht haben. Einige wichtige Funktionen ≡ Anlage von Beschnittzugaben ≡ Automatische Erzeugung der Schnittkontur ≡ Erstellung von Strichcodes, Textmarkierungen und Registrierungen IWS LFP Edition: Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Mit dem IWS LFP Edition automatisieren Sie Ihre Produktion von der Übernahme der Daten aus dem ERP-System bis zur Erzeugung der verschachtelten Druckform und der Übergabe an den RIP. Phoenix Core ist eine hochentwickelte KI-Technologie für die Planung und das Nesting von Druckerzeugnissen. Anders als herkömmliche Ausschießlösungen arbeitet Phoenix nicht auf Basis von Vorlagen, sondern erzeugt entsprechend der Maschinen- und Produktionsanforderungen druckfertige Layouts „on-the-fly“.

kostenlos

Ja

Organisator: Impressed GmbH

Kontaktinformation: E-Mailschulungen AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=328

So optimieren Sie Ihren LFP-Workflow