国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Table des matières
points clés
Corloge de base: compte à rebours à une date ou une heure spécifique
Définir la date de fin valide
Calculez le temps restant
Convertir le temps au format disponible
Lorsque nous préparons les jours, les heures, les minutes et les secondes, nous pouvons maintenant renvoyer les données en tant qu'objet réutilisable:
Maintenant, nous avons une fonction qui publie les jours, les heures, les minutes et les secondes restants, et nous pouvons construire notre horloge. Tout d'abord, nous créerons l'élément HTML suivant pour enregistrer notre horloge:
Nous devons nous améliorer un peu avant de définir le style d'horloge.
Supprimer le retard initial
évitez la reconstruction continue des horloges
Ajouter des zéros principaux
aller un peu plus loin
Planifiez automatiquement l'horloge
Définissez une minuterie de 10 minutes lorsque l'utilisateur arrive
Clock progressit à travers les pages
Un autre avertissement important concernant le temps du client
Résumé
étapes suivantes
Les questions fréquemment posées sur l'utilisation de l'heure et de la date dans JavaScript
Maison interface Web js tutoriel Construisez un compte à rebours en seulement 18 lignes de JavaScript

Construisez un compte à rebours en seulement 18 lignes de JavaScript

Feb 10, 2025 am 10:59 AM

Build a Countdown Timer in Just 18 Lines of JavaScript

Construire un compte à rebours javascript est parfois nécessaire, qu'il s'agisse d'un événement, d'une promotion ou d'un jeu. Vous pouvez créer l'horloge à l'aide de JavaScript natif sans compter sur aucun plugins. Bien qu'il existe de nombreux excellents plugins d'horloge, l'utilisation de JavaScript native présente les avantages suivants:

  • Code Lightweight, zéro dépendance.
  • Le site Web fonctionne mieux sans charger des scripts et des feuilles de style externes.
  • Avec plus de contr?le, vous pouvez contr?ler avec précision le comportement de l'horloge sans essayer de plier le plug-in en fonction de vos besoins.

Voici comment créer votre propre compte à rebours avec seulement 18 lignes de code JavaScript:

Pour acquérir une compréhension approfondie de JavaScript, veuillez lire notre livre "JavaScript: Novice to Ninja, 2nd Edition".

points clés

  • Vous pouvez créer une horloge à rebours légère et efficace à l'aide de JavaScript sans aucune dépendance, offrant de meilleures performances et un contr?le sans charger des scripts et des feuilles de style externes.
  • Ce processus comprend la définition d'une date de fin valide, le calcul du temps restant, la conversion de l'heure en formats disponibles, la sortie des données d'horloge en tant qu'objet réutilisable et afficher l'horloge sur la page et l'arrêter lorsque zéro est atteint.
  • Vous pouvez optimiser l'affichage de l'horloge en supprimant le retard initial, en mettant uniquement les nombres dans l'horloge pour améliorer l'efficacité des scripts et en ajoutant des zéros principaux au besoin.
  • Pour certains cas d'utilisation, les horloges peuvent être étendues, telles que la planification automatique de l'horloge, la définition d'une minuterie pour un moment précis où un utilisateur arrive et le maintien des progrès de l'horloge à travers les pages en enregistrant l'heure de la fin de l'horloge dans un cookie.
  • Un avertissement important à retenir: les dates et les heures JavaScript sont tirés de l'ordinateur de l'utilisateur, ce qui signifie que les utilisateurs peuvent affecter l'horloge JavaScript en modifiant l'heure sur leur ordinateur. Dans des situations extrêmement sensibles, il peut être nécessaire d'obtenir du temps du serveur.

Corloge de base: compte à rebours à une date ou une heure spécifique

La création d'une horloge de base implique les étapes suivantes:

  • Définissez la date de fin valide.
  • Calculez le temps restant.
  • Convertissez l'heure au format disponible.
  • Sortir les données de l'horloge en tant qu'objet réutilisable.
  • Affiche l'horloge sur la page et arrête l'horloge lorsque zéro est atteint.

Définir la date de fin valide

Tout d'abord, vous devez définir une date de fin valide. Cela devrait être une cha?ne qui peut être comprise dans n'importe quel format en utilisant la méthode Date.parse() de JavaScript. Par exemple:

Format ISO 8601:

const deadline = '2015-12-31';

Format court:

const deadline = '31/12/2015';

ou format long:

const deadline = 'December 31 2015';

Chaque format vous permet de spécifier l'heure et le fuseau horaire exacts (ou spécifier le décalage de l'UTC dans le cas d'une date ISO). Par exemple:

const deadline = 'December 31 2015 23:59:59 GMT+0200';

Vous pouvez en savoir plus sur le format de date JavaScript dans cet article.

Calculez le temps restant

L'étape suivante consiste à calculer le temps restant. Nous devons écrire une fonction qui accepte une cha?ne représentant une heure de fin donnée (comme décrit ci-dessus). Nous calculons ensuite la différence entre cette heure et l'heure actuelle. Comme indiqué ci-dessous:

const deadline = '2015-12-31';

Tout d'abord, nous créons une variable total pour économiser le temps restant avant la date limite. La fonction Date.parse() convertit une cha?ne de temps en valeur en millisecondes. Cela nous permet de soustraire deux fois l'un de l'autre et d'obtenir le temps entre les deux.

const deadline = '31/12/2015';

Convertir le temps au format disponible

Maintenant, nous voulons convertir des millisecondes en jours, heures, minutes et secondes. Prenons des secondes comme exemple:

const deadline = 'December 31 2015';

Décomposons ce qui se passe ici.

  1. Diviser les millisecondes de 1000 à secondes: (t / 1000)
  2. Divisez le nombre total de secondes par 60 et obtenez le reste. Vous n'avez pas besoin de toutes les secondes, il vous suffit de calculer les secondes restantes après la minute: (T / 1000)% 60
  3. autour de lui vers l'entier le plus proche. En effet Math.floor( (t/1000) % 60 )
  4. Répétez cette logique pour convertir des millisecondes en minutes, heures et jours.

Sortir les données de l'horloge en tant qu'objet réutilisable

Lorsque nous préparons les jours, les heures, les minutes et les secondes, nous pouvons maintenant renvoyer les données en tant qu'objet réutilisable:

Cet objet vous permet d'appeler votre fonction et d'obtenir une valeur calculée. Voici un exemple de la fa?on d'obtenir les minutes restantes:
const deadline = 'December 31 2015 23:59:59 GMT+0200';

est-ce pratique?
function getTimeRemaining(endtime){
  const total = Date.parse(endtime) - Date.parse(new Date());
  const seconds = Math.floor( (total/1000) % 60 );
  const minutes = Math.floor( (total/1000/60) % 60 );
  const hours = Math.floor( (total/(1000*60*60)) % 24 );
  const days = Math.floor( total/(1000*60*60*24) );

  return {
    total,
    days,
    hours,
    minutes,
    seconds
  };
}

Affichez l'horloge et arrêtez-le lorsqu'il atteint zéro

Maintenant, nous avons une fonction qui publie les jours, les heures, les minutes et les secondes restants, et nous pouvons construire notre horloge. Tout d'abord, nous créerons l'élément HTML suivant pour enregistrer notre horloge:

Ensuite, nous écrivons une fonction qui publie des données d'horloge à notre nouveau div:
const total = Date.parse(endtime) - Date.parse(new Date());

Cette fonction prend deux paramètres. Ils sont l'ID de l'élément qui contient notre horloge et l'heure de fin du compte à rebours. à l'intérieur de la fonction, nous déclarerons une variable
const seconds = Math.floor( (t/1000) % 60 );
et l'utiliserons pour stocker une référence à notre conteneur d'horloge Div. Cela signifie que nous n'avons pas à continuer d'interroger le DOM.

clock Ensuite, nous exécuterons une fonction anonyme par seconde en utilisant

. Cette fonction fera ce qui suit:

setInterval

Calculez le temps restant.
  • Sélectionnez le temps restant à notre div.
  • Si le temps restant atteint zéro, arrêtez l'horloge.
  • à ce stade, la seule étape restante consiste à exécuter l'horloge, comme indiqué ci-dessous:

Félicitations! Vous n'avez plus que 18 lignes de code JavaScript pour avoir une horloge de base.
return {
  total,
  days,
  hours,
  minutes,
  seconds
};

Préparez-vous à afficher votre horloge

Nous devons nous améliorer un peu avant de définir le style d'horloge.

  • Retirez le retard initial afin que votre horloge soit affichée immédiatement.
  • Rendre le script d'horloge plus efficace afin qu'il ne reconstruit pas toute l'horloge entièrement.
  • Ajouter des zéros principaux au besoin.

Supprimer le retard initial

Dans l'horloge, nous utilisons setInterval pour mettre à jour l'affichage à chaque seconde. C'est OK dans la plupart des cas, mais au début, il y aura un deuxième retard. Pour supprimer ce retard, nous devons mettre à jour l'horloge une fois avant le début de l'intervalle.

déplacez la fonction anonyme transmise vers setInterval dans sa propre fonction distincte. Nous pouvons nommer cette fonction updateClock. Appelez la fonction setInterval une fois à l'extérieur updateClock et appelez-la à nouveau à l'intérieur setInterval. De cette fa?on, l'horloge sera affichée sans délai.

Dans votre javascript, remplacez les éléments suivants:

const deadline = '2015-12-31';

Utilisez les éléments suivants:

const deadline = '31/12/2015';

évitez la reconstruction continue des horloges

Nous devons rendre les scripts d'horloge plus efficaces. Nous voulons mettre à jour uniquement les numéros dans l'horloge, plut?t que de reconstruire toute l'horloge à chaque seconde. Une fa?on de le faire est de mettre chaque numéro dans une balise <span> et de mettre à jour uniquement les contenus <span>.

c'est HTML:

const deadline = 'December 31 2015';

Laissez maintenant une référence à ces éléments. Ajoutez le code suivant après la définition de la variable clock

const deadline = 'December 31 2015 23:59:59 GMT+0200';

Ensuite, nous devons modifier la fonction updateClock pour mettre à jour uniquement les nombres. Le nouveau code ressemblera à ceci:

function getTimeRemaining(endtime){
  const total = Date.parse(endtime) - Date.parse(new Date());
  const seconds = Math.floor( (total/1000) % 60 );
  const minutes = Math.floor( (total/1000/60) % 60 );
  const hours = Math.floor( (total/(1000*60*60)) % 24 );
  const days = Math.floor( total/(1000*60*60*24) );

  return {
    total,
    days,
    hours,
    minutes,
    seconds
  };
}

Ajouter des zéros principaux

Maintenant que l'horloge ne reconstruit plus chaque seconde, nous avons encore une chose à faire: ajouter des zéros de premier plan. Par exemple, l'horloge n'affiche pas 7 secondes, mais affiche 07 secondes. Un moyen facile consiste à ajouter une cha?ne "0" au début du numéro, puis à couper les deux derniers chiffres.

Par exemple, pour ajouter des zéros principaux à la valeur "secondes", vous modifierez ce qui suit:

const total = Date.parse(endtime) - Date.parse(new Date());

pour ceci:

const seconds = Math.floor( (t/1000) % 60 );

Vous pouvez également ajouter des zéros principaux à des minutes et des heures si vous préférez. Si vous êtes venu si loin, félicitations! Votre horloge est maintenant disponible pour afficher.

Remarque: vous devrez peut-être cliquer sur "Rester" dans Codepen pour démarrer le compte à rebours.

aller un peu plus loin

L'exemple suivant montre comment évoluer l'horloge pour certains cas d'utilisation. Ils sont tous basés sur les exemples de base observés ci-dessus.

Planifiez automatiquement l'horloge

Supposons que nous voulions que l'horloge soit affichée certains jours et pas les autres jours. Par exemple, nous pouvons avoir une série d'événements à venir et ne voulons pas mettre à jour manuellement l'horloge à chaque fois. Voici comment organiser les choses à l'avance.

Masquez l'horloge en définissant la propriété display de l'horloge à none. Ajoutez ensuite ce qui suit à la fonction initializeClock (après la ligne commen?ant par var clock). Cela entra?nera que l'horloge n'appara?t qu'après avoir appelé la fonction initializeClock:

return {
  total,
  days,
  hours,
  minutes,
  seconds
};

Ensuite, nous pouvons spécifier la plage de dates que l'horloge doit afficher. Cela remplacera la variable deadline:

const deadline = '2015-12-31';

schedule Chaque élément du tableau représente une date de début et une date de fin. Comme mentionné ci-dessus, les fuseaux horaires peuvent être inclus, mais j'utilise des dates normales ici pour garder le code lisible.

Enfin, lorsque l'utilisateur charge la page, nous devons vérifier si nous sommes dans une plage de temps spécifiée. Ce code doit remplacer l'appel précédent à la fonction initializeClock.

const deadline = '31/12/2015';

Maintenant, vous pouvez planifier l'horloge à l'avance sans le mettre à jour manuellement. Vous pouvez raccourcir le code au besoin. Pour la lisibilité, je fais mon code verbeux.

Définissez une minuterie de 10 minutes lorsque l'utilisateur arrive

Il peut être nécessaire de définir un compte à rebours pendant un temps donné après l'arrivée de l'utilisateur ou démarre une tache spécifique. Nous allons définir une minuterie de 10 minutes ici, mais vous pouvez utiliser le temps que vous souhaitez.

Nous avons juste besoin de remplacer la variable deadline par ce qui suit:

const deadline = 'December 31 2015';

Ce code obtient l'heure actuelle et ajoute dix minutes. Les valeurs sont converties en millisecondes, de sorte qu'elles peuvent être additionnées et converties en une nouvelle échéance.

Maintenant, nous avons une horloge qui compte dix minutes à partir du moment où l'utilisateur arrive. N'hésitez pas à essayer différentes durées.

Clock progressit à travers les pages

Parfois, il est nécessaire de sauvegarder l'état de l'horloge, pas seulement la page actuelle. Si nous voulons définir un minuteur de 10 minutes sur l'ensemble du site Web, nous ne voulons pas qu'il se réinitialise lorsque l'utilisateur se rend sur une autre page.

Une solution consiste à enregistrer l'heure de fin de l'horloge dans le cookie. De cette fa?on, la navigation vers la nouvelle page ne réinitialise pas l'heure de fin à dix minutes.

C'est la logique:

  1. Si la date limite est enregistrée dans le cookie, la date limite est utilisée.
  2. Si le cookie n'existe pas, une nouvelle échéance est fixée et stockée dans le cookie.

pour y parvenir, remplacez la variable deadline par ce qui suit:

const deadline = 'December 31 2015 23:59:59 GMT+0200';

Ce code utilise des cookies et des expressions régulières, qui sont toutes deux des sujets distincts. Par conséquent, je ne vais pas entrer dans les détails ici. Une chose à noter est que vous devez changer .yourdomain.com en votre nom de domaine réel.

Un autre avertissement important concernant le temps du client

La date et l'heure JavaScript sont tirées de l'ordinateur de l'utilisateur. Cela signifie que les utilisateurs peuvent affecter l'horloge JavaScript en modifiant le temps sur leur ordinateur. Dans la plupart des cas, cela n'a pas d'importance. Mais dans certaines situations extrêmement sensibles, le temps doit être obtenu à partir du serveur. Cela peut être fait avec du PHP ou de l'Ajax, ce qui dépasse le cadre de ce tutoriel.

Après avoir obtenu le temps du serveur, nous pouvons utiliser les mêmes techniques dans ce tutoriel pour le gérer.

Résumé

Après avoir terminé les exemples de cet article, vous savez maintenant comment créer votre propre compte à rebours avec juste une petite quantité de code JavaScript natif! Nous avons appris à faire un compte à rebours de base et à l'afficher efficacement. Nous avons également couvert certaines fonctionnalités supplémentaires utiles, notamment la planification, le temps absolu et relatif, et l'utilisation de cookies pour enregistrer l'état entre l'accès à la page et au site Web.

étapes suivantes

Essayez d'utiliser votre code d'horloge. Essayez d'ajouter des styles créatifs ou de nouvelles fonctionnalités (telles que les boutons Pause et restauration). Après cela, si vous souhaitez partager des exemples d'horloge cool, faites-le nous savoir dans le forum.

Les questions fréquemment posées sur l'utilisation de l'heure et de la date dans JavaScript

Comment obtenir la date et l'heure actuelles en JavaScript? Vous pouvez utiliser l'objet Date pour obtenir la date et l'heure actuelles. Créez simplement une nouvelle instance de Date sans paramètres, qui représentera la date et l'heure actuelles.

Quelles sont les opérations de date et d'heure communes en JavaScript? Les opérations communes incluent les dates de mise en forme, l'analyse des cha?nes de date, le calcul des intervalles de temps, l'ajout ou la soustraction du temps et la comparaison des dates.

Quelle est la fa?on recommandée de gérer les fuseaux horaires en JavaScript? Il est préférable d'utiliser le temps UTC autant que possible pour éviter les problèmes de fuseau horaire. Lorsque vous affichez du temps à l'utilisateur, envisagez d'utiliser la méthode toLocaleString et de l'utilisation de l'option timeZone pour spécifier le fuseau horaire souhaité.

Comment calculer la différence entre deux dates en JavaScript? Vous pouvez soustraire deux objets Date pour obtenir des intervalles de temps en millisecondes et les convertir en jours, heures, minutes, etc. en utilisant des opérations mathématiques.

Puis-je facilement manipuler les dates en javascript? Oui, JavaScript fournit quelques fa?ons d'ajouter et de soustraire les intervalles de temps aux dates. L'objet Date a des méthodes telles que setFullYear, setMonth, setDate, etc., qui sont utilisées pour les opérations de date.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefa?on, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Java vs Javascript: effacer la confusion Java vs Javascript: effacer la confusion Jun 20, 2025 am 12:27 AM

Java et JavaScript sont différents langages de programmation, chacun adapté à différents scénarios d'application. Java est utilisé pour le développement des grandes entreprises et des applications mobiles, tandis que JavaScript est principalement utilisé pour le développement de pages Web.

Commentaires JavaScript: Explication courte Commentaires JavaScript: Explication courte Jun 19, 2025 am 12:40 AM

JavaScriptCommentsaSententialFormantaining, Reading et GuidingCodeEexecution.1) unique-linecomesaUSEUSEFORQUICKEXPLANATIONS.2) Multi-linecommentSExPlainComplexLogicorProvideTailedDocumentation.3) Inlinecomementsclarifypecifications

Comment travailler avec les dates et les heures de JS? Comment travailler avec les dates et les heures de JS? Jul 01, 2025 am 01:27 AM

Les points suivants doivent être notés lors du traitement des dates et du temps dans JavaScript: 1. Il existe de nombreuses fa?ons de créer des objets de date. Il est recommandé d'utiliser les cha?nes de format ISO pour assurer la compatibilité; 2. Get and définir des informations de temps peuvent être obtenues et définir des méthodes, et notez que le mois commence à partir de 0; 3. Les dates de mise en forme manuelle nécessitent des cha?nes et les bibliothèques tierces peuvent également être utilisées; 4. Il est recommandé d'utiliser des bibliothèques qui prennent en charge les fuseaux horaires, comme Luxon. La ma?trise de ces points clés peut éviter efficacement les erreurs courantes.

Pourquoi devriez-vous placer des balises  au bas du ? Pourquoi devriez-vous placer des balises au bas du ? Jul 02, 2025 am 01:22 AM

PlacertagsatthebottomofablogPostorwebPageSerSpracticalPurpossForseo, userexperience, anddesign.1.ithelpswithseobyallowingsechingenginestoaccesskeyword-elevanttagswithoutcluteringtheaincontent..itimproveserexperceenceegmentyepingthefocusonThearrlUl

Javascript contre Java: une comparaison complète pour les développeurs Javascript contre Java: une comparaison complète pour les développeurs Jun 20, 2025 am 12:21 AM

Javascriptispreferredforwebdevelopment, tandis que javaisbetterforlarge-scalebackenSystemsandandroidApps.1)

JavaScript: Exploration des types de données pour un codage efficace JavaScript: Exploration des types de données pour un codage efficace Jun 20, 2025 am 12:46 AM

JavascripthSsevenfundamentalDatatypes: nombre, cha?ne, booléen, indéfini, nul, objet, andymbol.1) nombres usUseadouble-précisformat, utile

Qu'est-ce que l'événement bouillonne et capture dans le DOM? Qu'est-ce que l'événement bouillonne et capture dans le DOM? Jul 02, 2025 am 01:19 AM

La capture d'événements et la bulle sont deux étapes de la propagation des événements dans DOM. La capture est de la couche supérieure à l'élément cible, et la bulle est de l'élément cible à la couche supérieure. 1. La capture de l'événement est implémentée en définissant le paramètre UseCapture d'AdveventListener sur true; 2. événement Bubble est le comportement par défaut, UseCapture est défini sur False ou Omise; 3. La propagation des événements peut être utilisée pour empêcher la propagation des événements; 4. événement Bubbling prend en charge la délégation d'événements pour améliorer l'efficacité du traitement du contenu dynamique; 5. La capture peut être utilisée pour intercepter les événements à l'avance, telles que la journalisation ou le traitement des erreurs. La compréhension de ces deux phases aide à contr?ler avec précision le calendrier et comment JavaScript répond aux opérations utilisateur.

Quelle est la différence entre Java et JavaScript? Quelle est la différence entre Java et JavaScript? Jun 17, 2025 am 09:17 AM

Java et JavaScript sont différents langages de programmation. 1.Java est un langage typique et compilé, adapté aux applications d'entreprise et aux grands systèmes. 2. JavaScript est un type dynamique et un langage interprété, principalement utilisé pour l'interaction Web et le développement frontal.

See all articles