Α κατηγορίας στην αντίστροφη Javascript
Δευτέρα 13 Οκτωβρίου, 2008Στη μετά με 3D Αντίστροφη FIVe3D (βλέπε Πώς το έκανα: γράψουν μια αντίστροφη μέτρηση στο Flash), ήταν μια κλάση πρόταση για τη δημιουργία ενός αντικειμένου Αντίστροφη σε Actionscript, εδώ μια έκδοση της ανάλογης Javascript:
JavaScript:
- / **
- * Αντίστροφη Τάξης
- *
- * @ Συγγραφέας Giovambattista Fazioli
- * @ @ Email g.fazioli undolog.com
- * @ Web http://www.undolog.com
- *
- * @ Param dd (string) «ημέρα μήνας, έτος"
- *
- * /
- dd ) { Αντίστροφη λειτουργία (ηη) (
- / / Init στόχο χρόνο
- Date ( dd ) ; var target = νέα ημερομηνία (ηη)?
- = target. getTime ( ) ; αυτό. targetTime = στόχο. getTime ()?
- / **
- * Refresh αντίστροφη μέτρηση
- * /
- = function ( ) { αυτό. Ανανέωση = λειτουργία () (
- Date ( ) ; var σήμερα = νέα ημερομηνία ()?
- ( ) ; var = currentTime σήμερα. getTime ()?
- / / Ώρα αριστερά
- this . targetTime - currentTime ) ; αυτό. _leftMilliseconds = (this. targetTime - currentTime)?
- ( this ._leftMilliseconds / 1000 ) ; αυτό. _leftSeconds = Math. όροφος (this. _leftMilliseconds / 1000)?
- ( this ._leftSeconds / 60 ) ; αυτό. _leftMinutes = Math. όροφος (this. _leftSeconds / 60)?
- ( this ._leftMinutes / 60 ) ; αυτό. _leftHours = Math. όροφος (this. _leftMinutes / 60)?
- / / Δεν υπάρχει ενότητα
- = Math. floor ( this ._leftHours / 24 ) ; αυτό. leftDays = Math. όροφος (this. _leftHours / 24)?
- / / Για εκτύπωση
- = this ._leftMilliseconds % 1000 ; αυτό. leftMilliseconds = αυτό. _leftMilliseconds% 1000?
- = this ._leftSeconds % 60 ; αυτό. leftSeconds = αυτό. _leftSeconds% 60?
- = this ._leftMinutes % 60 ; αυτό. leftMinutes = αυτό. _leftMinutes% 60?
- = this ._leftHours % 24 ; αυτό. leftHours = αυτό. _leftHours% 24?
- )
- ( ) ; αυτό. Refresh ()?
- )
Παράδειγμα
JavaScript:
- countDown ( '1 1, 2009' ) ; var τόσο νέα αντίστροφη = ( «1 1, 2009»)?
- / / Δείτε πόσες ημέρες, ώρες, λεπτά, δευτερόλεπτα και χιλιοστά του στο πρώτο Ιανουάριος 2009
- cd. leftDays + "," + cd. leftHours + "," + cd. leftMinutes + "," + cd. leftSeconds + "," + cd. leftMilliseconds ) ; έγγραφο. γράψει (δηλαδή leftDays + "," + CD. leftHours + "," + CD. leftMinutes + "," + CD. leftSeconds + "," + CD. leftMilliseconds)?






















Riccardo αξίζει δήλωσε:
Giovambattista Γεια σου,
Αυτό το βρίσκω πολύ ενδιαφέρον Javascript για λύση, επειδή είναι απλή και ελαφριά. Από αγάπη scripting, έκανα κάποιες αλλαγές για να τον κωδικό σας ότι μπορείτε διαθέσουν τα ακόλουθα:
Ουσιαστικά πιο σημαντική προσθήκη είναι η μέθοδος παραγωγής, η οποία σας επιτρέπει να εκτυπώσετε την αντίστροφη με τη μορφή που επιθυμεί ο χρήστης (με έναν τρόπο που μοιάζει πολύ με ήθελε στην PHP).
Για παράδειγμα, εάν θέλετε να εκτυπώσετε την ημερομηνία, ώρα, λεπτά, δευτερόλεπτα και χιλιοστά του λείπει μας μέσω αντίστροφης μέτρησης, θα μπορούσαμε να προχωρήσουμε ως εξής, κάθε φορά που υπενθυμίσει, χωρίς να καταφεύγουν οι εσωτερικές ιδιότητες της τάξης μας:
Η μέθοδος "καθιστούν" είναι τελικά "ομαλοποίηση" της μορφής των αριθμών.
Μια άλλη ενδιαφέρουσα προσθήκη θα ήταν σε ένα «ξεκίνημα», η οποία ζητά τη μέθοδο παραγωγής, ώστε φαίνεται μια πραγματική αντίστροφη μέτρηση (Countdown θα σταματήσει με τη μέθοδο "stop").
Riccardo άξιος
Giovambattista Fazioli δήλωσε:
@ Richard αξίζει πραγματικά μια ωραία παραλλαγή, μπράβο! Ιδιαίτερα ενδιαφέρουσα τεχνική για την φορμάρετε το εξόδου: δαιμόνιος και λεπτή! Κατά τη μέθοδο
output()θα θέσει ένα όριο στηνreturn(output) document.write()... αλλά είναι μια λεπτομέρεια. Ένα χρονόμετρο με τοstart() stop()ουσιαστικά ολοκληρωμένη. Συγχαρητήρια και ευχαριστίες για τις ενδιαφέρουσες προτάσειςRiccardo αξίζει δήλωσε:
@ Giovambattista Fazioli:
Βέβαια, θα παρεμβάλλεται document.write για άμεση κοινοποίηση των δοκιμών, στην τελική παραγωγή
returnεπιστροφής πρέπει να είναι έναΑπό ό, τι δεν ήμουν ευχαριστημένος από αυτή την ανταλλαγή απόψεων
Τα λέμε σύντομα,
Riccardo άξιος
Giovambattista Fazioli δήλωσε:
Update: Microsoft Internet Explorer 7, η ημερομηνία σε αριθμητική μορφή, είδος
"3 5, 2008"σφάλμα. Για να διαγράψετε απλά εισάγετε το "μήνα", σύμφωνα με το υπόδειγμα 3 επιστολές στην αγγλική γλώσσα: Ιανουάριος, Φεβρουάριος, Μάρτιος, κτλ ...