Maison interface Web js tutoriel js pour écrire un effet de calendrier simple pour la journée [code d'implémentation] compétences _javascript

js pour écrire un effet de calendrier simple pour la journée [code d'implémentation] compétences _javascript

May 16, 2016 pm 03:02 PM
js 日历

J'ai toujours voulu écrire un calendrier en utilisant javascript, mais je ne l'ai pas essayé car je n'ai aucune bonne idée du tout. Récemment, il m'est arrivé de voir un exemple de calendrier simple écrit en javascript sur Internet. Bien que la quantité de code ne soit pas importante, je pense que cela explique très bien le principe d'implémentation du calendrier js. Je l'ai aussi essayé moi-même et j'ai beaucoup gagné. Après avoir maîtrisé les principes de base de mise en œuvre, je peux l'utiliser librement si je souhaite ajouter plus de fonctions. Si vous êtes intéressé, vous pouvez l'essayer !

1. Problème avec le nombre de lignes dans le tableau

Puisque vous souhaitez afficher un tableau de dates, vous devez d'abord connaître le nombre de lignes et de colonnes du tableau. Le nombre de colonnes a été déterminé. Il y a 7 colonnes au total à partir du dimanche (la première colonne du calendrier est le dimanche). ) à samedi. Avant de résoudre le problème du numéro de ligne, vous devez d'abord savoir quel jour de la semaine est le premier jour de ce mois, car le premier jour de chaque mois ne commence pas toujours le dimanche sur le calendrier. Le premier jour peut être un vendredi ou un samedi. . Incertain, donc la partie gauche du n°1 doit être remplacée par un formulaire vide. Alors, combien de tables vides faut-il utiliser pour le remplacer ? La méthode getDay() doit être utilisée ici. Cette méthode renvoie un nombre dans le tableau [0-6]. sur. . Ainsi, si le 1er du mois tombe un vendredi, il faudra alors 5 tables vides à gauche. Ensuite, si un mois comporte 31 jours, le nombre final de lignes du tableau est :

var tr_nums = Math.ceil((5 + 31)/7

Bien sûr, tous les mois n'ont pas 31 jours, nous devons donc créer un tableau contenant 12 mois, chaque élément représentant le nombre de jours contenus dans chaque mois. Mais février est particulier : février des années bissextiles compte 29 jours, alors que février des années ordinaires n'a que 28 jours. Par conséquent, avant de créer un tableau, vous devez créer une fonction pour déterminer les années bissextiles :

//如果当前年份能被4整除但是不能被100整除或者能被400整除,即可确定为闰年,返回1,否则返回0
function isLeap(year) {
 return year % 4 == 0 ? (year % 100 != 0 ? 1 : (year % 400 == 0 ? 1 : 0)) : 0;
}
Copier après la connexion

Ensuite, nous créons un tableau de mois :

var days_per_month = new Array(31, 28 + isLeap(year), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
Copier après la connexion

Cela garantit que le nombre correct de jours sera récupéré, qu'il s'agisse d'une année ordinaire ou d'une année bissextile. Le code suivant est utilisé pour obtenir les informations pertinentes d'aujourd'hui :

var today = new Date(),       //获取当前日期
  y = today.getFullYear(),     //获取日期中的年份
  m = today.getMonth(),      //获取日期中的月份(需要注意的是:月份是从0开始计算,获取的值比正常月份的值少1)
  d = today.getDate(),       //获取日期中的日(方便在建立日期表格时高亮显示当天)
  firstday = new Date(y, m, 1),  //获取当月的第一天
  dayOfWeek = firstday.getDay(),  //判断第一天是星期几(返回[0-6]中的一个,0代表星期天,1代表星期一,以此类推)
  days_per_month = new Array(31, 28 + isLeap(y), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31), //创建月份数组
Copier après la connexion

Vous pouvez enfin obtenir le nombre de lignes du tableau requis pour le mois en cours :

var str_nums = Math.ceil((dayOfWeek + days_per_month[m]) / 7); //确定日期表格所需的行数
Copier après la connexion

2. Imprimer le formulaire de calendrier

La table elle-même est un tableau à deux dimensions, alors laissez le for master exécuter deux boucles et ce sera fait. Le code est le suivant :

for (i = 0; i < str_nums; i += 1) {   //第一层for循环创建tr标签
  document.write('<tr>');
  for (k = 0; k < 7; k++) {      //第二层for循环创建td标签
   var idx = 7 * i + k;        //为每个表格创建索引,从0开始
   var date = idx - dayOfWeek + 1;  //将当月的1号与星期进行匹配
   //do something else
  }
  document.write('</tr>');
  }
Copier après la connexion

3. Ci-joint le code complet du calendrier js

<script>
  //判断当前年份是否是闰年(闰年2月份有29天,平年2月份只有28天)
  function isLeap(year) {
  return year % 4 == 0 &#63; (year % 100 != 0 &#63; 1 : (year % 400 == 0 &#63; 1 : 0)) : 0;
  }
  var i, k,
  today = new Date(),                 //获取当前日期
  y = today.getFullYear(),              //获取日期中的年份
  m = today.getMonth(),                //获取日期中的月份(需要注意的是:月份是从0开始计算,获取的值比正常月份的值少1)
  d = today.getDate(),                //获取日期中的日(方便在建立日期表格时高亮显示当天)
  firstday = new Date(y, m, 1),            //获取当月的第一天
  dayOfWeek = firstday.getDay(),           //判断第一天是星期几(返回[0-6]中的一个,0代表星期天,1代表星期一,以此类推)
  days_per_month = new Array(31, 28 + isLeap(y), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31),         //创建月份数组
  str_nums = Math.ceil((dayOfWeek + days_per_month[m]) / 7);                        //确定日期表格所需的行数
  document.write("<table cellspacing='0'><tr><th>日</th><th>一</th><th>二</th><th>三</th><th>四</th><th>五</th><th>六</th></tr>"); //打印表格第一行(显示星期)
  for (i = 0; i < str_nums; i += 1) {         //二维数组创建日期表格
  document.write('<tr>');
  for (k = 0; k < 7; k++) {
   var idx = 7 * i + k;                //为每个表格创建索引,从0开始
   var date = idx - dayOfWeek + 1;          //将当月的1号与星期进行匹配
   (date <= 0 || date > days_per_month[m]) &#63; date = ' ': date = idx - dayOfWeek + 1;  //索引小于等于0或者大于月份最大值就用空表格代替
   date == d &#63; document.write('<td class="today">' + date + '</td>') : document.write('<td>' + date + '</td>');  //高亮显示当天
  }
  document.write('</tr>');
  }
  document.write('</table>');
 </script>
Copier après la connexion

N'hésitez pas à jouer avec la partie css L'heure actuelle est le 2 mai 2016. Le rendu est le suivant :

L'effet de calendrier simple d'écriture js ci-dessus pour la journée [code d'implémentation] est tout le contenu partagé par l'éditeur. J'espère qu'il pourra vous donner une référence et j'espère que vous soutiendrez Script Home.

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

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.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

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 grâce à 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)

Que dois-je faire si le calendrier double écran win11 n'existe pas sur le deuxième moniteur ? Que dois-je faire si le calendrier double écran win11 n'existe pas sur le deuxième moniteur ? Jun 12, 2024 pm 05:47 PM

Un outil important pour organiser votre travail et votre routine quotidienne dans Windows 11 est l'affichage de l'heure et de la date dans la barre des tâches. Cette fonctionnalité est généralement située dans le coin inférieur droit de l'écran et vous donne un accès instantané à l'heure et à la date. En cliquant sur cette zone, vous pouvez afficher votre calendrier, ce qui facilite la vérification des rendez-vous et des dates à venir sans avoir à ouvrir une application distincte. Cependant, si vous utilisez plusieurs moniteurs, vous risquez de rencontrer des problèmes avec cette fonctionnalité. Plus précisément, alors que l'horloge et la date apparaissent dans la barre des tâches sur tous les moniteurs connectés, la possibilité de cliquer sur la date et l'heure sur un deuxième moniteur pour afficher le calendrier n'est pas disponible. Pour l'instant, cette fonctionnalité ne fonctionne que sur l'écran principal - contrairement à Windows 10, où cliquer sur n'importe quel

Le calendrier Win10 affiche les numéros de semaine Le calendrier Win10 affiche les numéros de semaine Jan 04, 2024 am 08:41 AM

De nombreux utilisateurs souhaitent utiliser l'outil de calendrier Win10 pour vérifier le nombre de jours actuel, mais le calendrier n'affiche pas automatiquement cette fonction. En fait, il suffit d'effectuer des réglages simples pour voir le nombre cumulé de semaines cette année ~ le calendrier Win10 s'affiche. semaines Tutoriel de paramétrage numérique : 1. Saisissez le calendrier dans la recherche dans le coin inférieur gauche du bureau et ouvrez l'application. 2. Dans l'application de calendrier ouverte, cliquez sur l'icône « engrenage » dans le coin inférieur gauche et les paramètres apparaîtront à droite. Nous cliquons sur « Paramètres du calendrier ». 3. Continuez dans les paramètres du calendrier ouvert, recherchez « Numéro de semaine ». puis changez la semaine. Ajustez simplement l'option numérique sur "le premier jour de l'année". 4. Après avoir complété les paramètres ci-dessus, cliquez sur « Semaine » pour voir les statistiques du nombre de semaines de cette année.

Le calendrier Outlook ne se synchronise pas ; Le calendrier Outlook ne se synchronise pas ; Mar 26, 2024 am 09:36 AM

Si votre calendrier Outlook ne parvient pas à se synchroniser avec Google Agenda, Teams, iPhone, Android, Zoom, compte Office, etc., veuillez suivre les étapes suivantes pour résoudre le problème. L'application de calendrier peut être connectée à d'autres services de calendrier tels que Google Calendar, iPhone, Android, Microsoft Office 365, etc. Ceci est très utile car elle peut se synchroniser automatiquement. Mais que se passe-t-il si OutlookCalendar ne parvient pas à se synchroniser avec des calendriers tiers ? Les raisons possibles peuvent être la sélection d'un mauvais calendrier pour la synchronisation, un calendrier non visible, une interférence d'une application en arrière-plan, une application Outlook ou une application de calendrier obsolète, etc. Correctif préliminaire pour le calendrier Outlook qui ne se synchronise pas

Impossible d'ouvrir le calendrier dans le coin inférieur droit de Win10 Impossible d'ouvrir le calendrier dans le coin inférieur droit de Win10 Dec 26, 2023 pm 05:07 PM

Certains amis qui utilisent le système win0 ont rencontré une situation dans laquelle le calendrier win10 ne peut pas être ouvert. Il s'agit simplement d'un problème informatique normal. Il peut être résolu dans les paramètres de confidentialité du système win10. Aujourd'hui, l'éditeur a apporté une solution détaillée. Ci-dessous, jetons un coup d'oeil. Solution au problème selon lequel le calendrier ne peut pas être ouvert dans le coin inférieur droit de Win10 1. Cliquez sur Démarrer dans le système Win10 → cliquez sur le bouton de la liste des programmes ci-dessus → recherchez Pinyin (chinois) R → Calendrier 2. Lors de sa première utilisation , les nouveaux événements ne peuvent pas être ouverts (souris Si vous vous penchez, il n'y aura pas de bleu foncé sélectionné), vous pouvez le définir en toute confidentialité. Cliquez sur l'icône à trois barres dans le coin supérieur gauche du bureau → il y aura un menu de paramètres en bas ; 3. Cliquez sur Confidentialité dans l'interface contextuelle 4. Si vous avez déjà utilisé les paramètres, vous pouvez cliquer sur le bouton ; gauche

Bureau d'achats sans période perdue : nouveaux périphériques de la série calendrier et anniversaire ! Bureau d'achats sans période perdue : nouveaux périphériques de la série calendrier et anniversaire ! Feb 29, 2024 pm 12:00 PM

Le bureau des achats perdus sera mis à jour à 11 heures le 28 février. Les joueurs peuvent se rendre sur Taobao pour rechercher le bureau des achats et sélectionner la catégorie de magasin à acheter. Cette fois, nous vous proposons la série de fêtes d'anniversaire MBCC et les périphériques du calendrier de bureau 2024. ensemble, jetez un œil aux détails du produit cette fois. Bureau d'achats sans période perdue : nouveaux périphériques de la série calendrier et anniversaire ! Il y a du nouveau au Bureau des Achats Perdus ! —Heure de prévente : 11h00 le 28 février 2024 - 23h59 le 13 mars 2024. Adresse d'achat : Taobao recherchez [Bureau d'achat perdu indéfini] et sélectionnez la catégorie [Magasin] pour entrer dans le magasin pour acheter un périphérique ; introduction : Les nouveaux périphériques sortis cette fois sont les périphériques de la série de fêtes d'anniversaire MBCC et du calendrier de bureau 2024. Veuillez cliquer sur l'image longue pour plus de détails. La Direction des Achats présente de nouveaux périphériques – étudiants MBCC

Que dois-je faire s'il n'y a pas de rappels contextuels pour les événements du calendrier dans Win10 ? Comment récupérer si les rappels d'événements du calendrier ont disparu dans Win10 ? Que dois-je faire s'il n'y a pas de rappels contextuels pour les événements du calendrier dans Win10 ? Comment récupérer si les rappels d'événements du calendrier ont disparu dans Win10 ? Jun 09, 2024 pm 02:52 PM

Le calendrier peut aider les utilisateurs à enregistrer votre emploi du temps et même à définir des rappels. Cependant, de nombreux utilisateurs se demandent que faire si les rappels d'événements du calendrier n'apparaissent pas dans Windows 10 ? Les utilisateurs peuvent d'abord vérifier l'état de la mise à jour Windows ou vider le cache du Windows App Store pour effectuer l'opération. Laissez ce site présenter soigneusement aux utilisateurs l'analyse du problème du rappel des événements du calendrier Win10 qui n'apparaît pas. Pour ajouter des événements au calendrier, cliquez sur le programme "Calendrier" dans le menu système. Cliquez avec le bouton gauche de la souris sur une date du calendrier. Entrez le nom de l'événement et l'heure du rappel dans la fenêtre d'édition, puis cliquez sur le bouton « Enregistrer » pour ajouter l'événement. Résoudre le problème du rappel d'événement du calendrier Win10 qui n'apparaît pas

Recommandé : Excellent projet de détection et de reconnaissance des visages open source JS Recommandé : Excellent projet de détection et de reconnaissance des visages open source JS Apr 03, 2024 am 11:55 AM

La technologie de détection et de reconnaissance des visages est déjà une technologie relativement mature et largement utilisée. Actuellement, le langage d'application Internet le plus utilisé est JS. La mise en œuvre de la détection et de la reconnaissance faciale sur le front-end Web présente des avantages et des inconvénients par rapport à la reconnaissance faciale back-end. Les avantages incluent la réduction de l'interaction réseau et de la reconnaissance en temps réel, ce qui réduit considérablement le temps d'attente des utilisateurs et améliore l'expérience utilisateur. Les inconvénients sont les suivants : il est limité par la taille du modèle et la précision est également limitée ; Comment utiliser js pour implémenter la détection de visage sur le web ? Afin de mettre en œuvre la reconnaissance faciale sur le Web, vous devez être familier avec les langages et technologies de programmation associés, tels que JavaScript, HTML, CSS, WebRTC, etc. Dans le même temps, vous devez également maîtriser les technologies pertinentes de vision par ordinateur et d’intelligence artificielle. Il convient de noter qu'en raison de la conception du côté Web

Comment créer un graphique en chandeliers boursiers en utilisant PHP et JS Comment créer un graphique en chandeliers boursiers en utilisant PHP et JS Dec 17, 2023 am 08:08 AM

Comment utiliser PHP et JS pour créer un graphique en bougies boursières. Un graphique en bougies boursières est un graphique d'analyse technique courant sur le marché boursier. Il aide les investisseurs à comprendre les actions de manière plus intuitive en dessinant des données telles que le prix d'ouverture, le prix de clôture, le prix le plus élevé et le prix le plus élevé. prix le plus bas des fluctuations du prix des actions. Cet article vous apprendra comment créer des graphiques en bougies boursières en utilisant PHP et JS, avec des exemples de code spécifiques. 1. Préparation Avant de commencer, nous devons préparer l'environnement suivant : 1. Un serveur exécutant PHP 2. Un navigateur prenant en charge HTML5 et Canvas 3.

See all articles