CountDown eine Klasse in Javascript

Montag, 13. Oktober 2008

In der post-3D-Countdown mit five3D (siehe auch How I Did It: Schreiben Sie ein Countdown in Flash), erhielt eine Klasse zum Erstellen eines Objekts Countdown in Actionscript, hier ist eine ähnliche Version in Javascript:

JavaScript:
  1. / **
  2. * Klasse CountDown
  3. *
  4. * @ Autor Giovambattista Fazioli
  5. * @ Email@g.fazioli undolog.com
  6. * @ Web http://www.undolog.com
  7. *
  8. Dd * @ param (string) 'Monat Tag Jahr'
  9. *
  10. * /
  11. dd ) { function countdown (dd) (
  12. / / Init Zielzeit
  13. new Date ( dd ) ; var target = new Date (dd);
  14. = target. getTime ( ) ; dies. targetTime = target. getTime ();
  15. / **
  16. * Refresh Countdown
  17. * /
  18. = function ( ) { dies. refresh = function () (
  19. new Date ( ) ; var today = new Date ();
  20. today. getTime ( ) ; var currentTime = heute. getTime ();
  21. / / Time left
  22. ( this . targetTime - currentTime ) ; dies. _leftMilliseconds = (this. targetTime - currentTime);
  23. Math. floor ( this ._leftMilliseconds / 1000 ) ; dies. _leftSeconds = Math. Boden (this. _leftMilliseconds / 1000);
  24. Math. floor ( this ._leftSeconds / 60 ) ; dies. _leftMinutes = Math. Boden (this. _leftSeconds / 60);
  25. Math. floor ( this ._leftMinutes / 60 ) ; dies. _leftHours = Math. Boden (this. _leftMinutes / 60);
  26. / / No-Modul
  27. = Math. floor ( this ._leftHours / 24 ) ; dies. leftDays = Math. Boden (this. _leftHours / 24);
  28. / / Für die Druckausgabe
  29. = this ._leftMilliseconds % 1000 ; dies. leftMilliseconds = this. _leftMilliseconds% 1000;
  30. = this ._leftSeconds % 60 ; dies. leftSeconds = this. _leftSeconds% 60;
  31. = this ._leftMinutes % 60 ; dies. leftMinutes = this. _leftMinutes% 60;
  32. = this ._leftHours % 24 ; dies. leftHours = this. _leftHours% 24;
  33. )
  34. ( ) ; dies. refresh ();
  35. )

Beispiel

JavaScript:
  1. new countDown ( '1 1, 2009' ) ; var cd = new Countdown ('1 1, 2009 ');
  2. / / Zeigen Sie, wie viele Tage, Stunden, Minuten, Sekunden und Millisekunden bis Januar 2009
  3. cd. leftDays + "," + cd. leftHours + "," + cd. leftMinutes + "," + cd. leftSeconds + "," + cd. leftMilliseconds ) ; Dokument. write (Cd. leftDays + "" + CD. leftHours + "" + CD. leftMinutes + "" + CD. leftSeconds + "" + CD. leftMilliseconds);

Verwandte Post

War dieser Artikel hilfreich?: Per nientePocoAbbastanzaMoltoMoltissimo
Loading ... Loading ...

5 Kommentare zu "Eine Klasse Countdown in Javascript"

  1. getAvatar 1,0
    14. Oktober 2008 Richard Worthy:

    Hallo Giovambattista,
    Finde ich sehr interessant diese JavaScript-Lösung, weil es einfach ist. Als Liebhaber von Scripting, ich habe einige Änderungen an Ihrem Code, den Sie Platz machte folgende:

    JavaScript:
    1. dd ) { function countdown (dd) (
    2. / / Init Zielzeit
    3. new Date ( dd ) ; var target = new Date (dd);
    4. = target. getTime ( ) ; dies. targetTime = target. getTime ();
    5. / **
    6. * Refresh Countdown
    7. * /
    8. = function ( ) { dies. refresh = function () (
    9. new Date ( ) ; var today = new Date ();
    10. today. getTime ( ) ; var currentTime = heute. getTime ();
    11. / / Time left
    12. = this . targetTime - currentTime ; dies. leftMilliseconds = this. targetTime - currentTime;
    13. = Math. floor ( this . leftMilliseconds / 1000 ) ; dies. leftSeconds = Math. Boden (this. leftMilliseconds / 1000);
    14. = Math. floor ( this . leftSeconds / 60 ) ; dies. leftMinutes = Math. Boden (this. leftSeconds / 60);
    15. = Math. floor ( this . leftMinutes / 60 ) ; dies. leftHours = Math. Boden (this. leftMinutes / 60);
    16. = Math. floor ( this . leftHours / 24 ) ; dies. leftDays = Math. Boden (this. leftHours / 24);
    17. ( ) ; dies. render ();
    18. );
    19. = function ( ) { dies. render = function () (
    20. = this . ms = this . leftMilliseconds % 1000 ; dies. leftMilliseconds = this. ms = this. leftMilliseconds% 1000;
    21. = this . s = this . leftSeconds % 60 ; dies. leftSeconds = this. s = this. leftSeconds% 60;
    22. = this . m = this . leftMinutes % 60 ; dies. leftMinutes = this. m = this. leftMinutes% 60;
    23. = this . h = this . leftHours % 24 ; dies. leftHours = this. h = this. leftHours% 24;
    24. = this . leftDays ; diese. d = this. leftDays;
    25. );
    26. = function ( _format ) { dies. output = function (_Format) (
    27. _format. split ( ' ' ) || 'dhms ms' , output = '' ; var format = _Format. split ('') | | 'DHMS ms', output ='';
    28. / / Alert (fn); kommentiert von = Rückgängig = : D
    29. var t in format ) { for (var t im Format) (
    30. this [ format [ t ] ] ) output += this [ format [ t ] ] + ( ( t != format. length - 1 ) ? ', ' : '' ) ; if (this [Format [t]]) output + = this [Format [t]] + ((t! = Format. Länge - 1)?',':'');
    31. )
    32. output ) ; Dokument. write (output);
    33. );
    34. ( ) ; dies. refresh ();
    35. )

    Grundsätzlich Zugabe mehr Struktur und vertreten durch die Output-Methode, mit der Sie den Countdown mit dem gewünschten Format durch den Benutzer print (in sehr ähnlicher Weise wie es in PHP) ermöglicht.
    Zum Beispiel, wenn Sie wollte das Datum, Stunden, Minuten, Sekunden und Millisekunden fehlende durch unsere Countdown zu drucken, können wir wie folgt vor, jeder Zeit ohne Rückgriff auf die inneren Werte unserer Klasse Appell:

    JavaScript:
    1. new countDown ( '1 1, 2009' ) ; var cd = new Countdown ('1 1, 2009 ');
    2. 'dhms ms' ) ; cd. Ausgang ( "DHMS ms ');

    Die Methode "zu machen" schließlich kümmert sich um die "Normalisierung" das Format der Zahlen.

    Eine weitere interessante Ergänzung wäre es, eine Methode "start", die die Ausgabe fordert in regelmäßigen Abständen, so dass Sie aussehen wie ein echter Countdown (Countdown, die durch ihre Methode "Stop" beendet werden kann).

    Richard Worthy

  2. getAvatar 1,0
    14. Oktober 2008 Giovambattista Fazioli:

    @ Richard Worthy: wirklich eine schöne Variante, bravo! Besonders interessante Technik, um die Ausgabe zu formatieren: genial und fein! In der Methode output() würde output() legte eine Grenze return(output) anstatt ein document.write() ... aber es ist ein Detail. Ein Timer mit start() und stop() machen es alle wirklich abzuschließen. Herzlichen Glückwunsch und vielen Dank für die interessanten Vorschläge :)

  3. getAvatar 1,0
    15. Oktober 2008 Richard Worthy:

    @ Giovambattista Fazioli:

    In der Methode output() würde output() legte eine Grenze return(output) anstatt ein document.write()

    Gewiß, trat ich in die document.write() für eine rasche Zustellung der Prüfung, in der endgültigen Fassung der Produktionskosten und einer return ist ein Muss ;)

    Herzlichen Glückwunsch und vielen Dank für die interessanten Vorschläge :)

    Alles, was war ich froh, dass der Austausch von technischer Beratung :)

    Bald,
    Richard Worthy

  4. getAvatar 1,0
    20. November 2008 Giovambattista Fazioli:

    Update: Microsoft Internet Explorer 7, das Datum im numerischen Format, Typ "3 5, 2008" produziert Fehler. Zum Löschen geben Sie einfach die "Monate" mit 3 Buchstaben in Englisch: Jan, Feb, Mär, etc ...

  5. getAvatar 1,0
    05 ott, 2009 Paul:

    @ Giovambattista Fazioli:

    Hallo an alle.
    Ich fand das sehr interessant Skript.
    Mein einziges Problem? Als ein Idiot mit Javascript finden es schwierig, in eine Webseite einfügen.
    Die Veränderung, die ich den Code gemacht hat, gelegt worden "Rückkehr" statt document.write, aber ich kann mich nicht erinnern, dann die Seite id nicht verstehen, was ich benutze.
    Können Sie helfen?
    Danke
    Hallo

Leave a comment

TAG XHTML Berechtigungen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> INSERTION CODE:
 <pre></pre>         // blocco generico [code][/code]       // blocco generico [as][/as]           // Actionscript [css][/css]         // CSS Style Sheet [html][/html]       // HTML [js][/js]           // Javascript [objc][/objc]       // Objective-C [php][/php]         // PHP [sql][/sql]         // SQL