JS日历,(万年历)功能和界面都挺好的

JS函数制作万年历 制作年历 - 利用 prompt() 函数接收用户设置的年份。 - 编写 calendar() 函数,根据指定的年份生成年历。 - 设计并输出日历的显示样式。 - 获取指定年份1月1日的星期值,获取每个月共有多少天。 - 循环遍历每个月中的日期。 - 将日期显示到对应的星期下面。 阅读详情

<style type="text/css">
.body,td{font-family:"Arial";font-size:8pt;color:#000000;}
.TrOut{background:#dddddd;height:26;border:1 solid #999999;border-top-color:#f4f4f4;border-left-color:#f4f4f4;}
.TdOver{background:#eeeeee;height:20;border:1 solid #ffffff;border-top-color:#9c9c9c;border-left-color:#9c9c9c;}
.TdOut{background:#eeeeee;height:20;border:1 solid #9c9c9c;border-top-color:#ffffff;border-left-color:#ffffff;}
</style>
<Script language="JScript" defer>
function TableFunction(){
    this.GetDateStr=function(y,m){
        this.DayArray=[];
        for(var i=0;i<42;i++)this.DayArray[i]=" ";
        for(var i=0;i<new Date(y,m,0).getDate();i++)this.DayArray[i+new Date(y,m-1,1).getDay()]=i+1;
        return this.DayArray;
        }
    this.GetTableStr=function(y,m){
        this.DateArray=["日","一","二","三","四","五","六"];
        this.DStr="<table oncontextmenu='return false' onselectstart='return false' style='width:160;cursor:default;border:1 solid #9c9c9c;border-right:0;border-bottom:0;filter:progid:dximagetransform.microsoft.dropshadow(color=#e3e3e3,offx=3,offy=3,positive=true)' border='0' cellpadding='0' cellspacing='0'>/n"+
        "<tr><td colspan='7' class='TrOut'>"+
        "<table width='100%' height='100%'border='0' cellpadding='0' cellspacing='0'><tr align='center'>/n"+
        "<td width='20' style='font-family:/"webdings/";font-size:9pt' onclick='TableFunction().JumpToRun(/"b/")' onmouseover='this.style.color=/"#ff9900/"' onmouseout='this.style.color=/"/"'>3</td>/n"+
        "<td id='YearTD' width='70' onmouseover='this.style.background=/"#cccccc/"' onmouseout='this.style.background=/"/"' onclick='TableFunction().WriteSelect(this,this.innerText.split(/" /")[0],/"y/",false)'>"+y+" 年</td>/n"+
        "<td id='MonthTD' width='47' onmouseover='this.style.background=/"#cccccc/"' onmouseout='this.style.background=/"/"' onclick='TableFunction().WriteSelect(this,this.innerText.split(/" /")[0],/"m/",false)'>"+m+" 月</td>/n"+
        "<td width='20' style='font-family:/"webdings/";font-size:9pt' onclick='TableFunction().JumpToRun(/"n/")' onmouseover='this.style.color=/"#ff9900/"' onmouseout='this.style.color=/"/"'>4</td></tr></table>/n"+
        "</td></tr>/n"+
        "<tr align='center'>/n";
        for(var i=0;i<7;i++)
        this.DStr+="<td class='TrOut'>"+DateArray[i]+"</td>/n";
        this.DStr+="</tr>/n";
        for(var i=0;i<6;i++){
        this.DStr+="<tr align='center'>/n";
        for(var j=0;j<7;j++){
            var CS=new Date().getDate()==this.GetDateStr(y,m)[i*7+j]?"TdOver":"TdOut";
            this.DStr+="<td id='TD' class='"+CS+"' cs='"+CS+"' onmouseover='this.className=/"TdOver/"' onmouseout='if(this.cs!=/"TdOver/")this.className=/"TdOut/"' onclick='TableFunction().AlertDay()'>"+this.GetDateStr(y,m)[i*7+j]+"</td>/n";
            }
        this.DStr+="</tr>/n";
        }
        this.DStr+="</tabe>";
        return this.DStr;
        }
    this.WriteSelect=function(obj,values,action,getobj){
        if(values=="")return;
        if(getobj){
            obj.innerHTML=values+(action=="y"?" 年":" 月");
            this.RewriteTableStr(YearTD.innerText.split(" ")[0],MonthTD.innerText.split(" ")[0]);
            return false;
            }
        var StrArray=[];
        if(action=="y"){
            for(var i=0;i<15;i++){
                var year=values-7+i;
                StrArray[i]="<option value='"+year+"' "+(values==year?"selected":"")+"> "+year+"年</option>/n";
                }
            obj.innerHTML="<select id='select1' style='width:67' onchange='TableFunction().WriteSelect(parentElement,this.value,/"y/",true)' onblur='YearTD.innerText=this.value+/" 年/"'>/n"+StrArray.join("")+"</select>";
            select1.focus();
            }
        if(action=="m"){
            for(var i=1;i<13;i++)
                StrArray[i]="<option value='"+i+"' "+(i==values?"selected":"")+"> "+i+"月</option>/n";
            obj.innerHTML="<select id='select2' style='width:47' onchange='TableFunction().WriteSelect(parentElement,this.value,/"m/",true)' onblur='MonthTD.innerText=this.value+/" 月/"'>/n"+StrArray.join("")+"</select>";
            select2.focus();
            }
        }
    this.RewriteTableStr=function(y,m){
        var TArray=this.GetDateStr(y,m);
        var len=TArray.length;
        for(var i=0;i<len;i++){
            TD[i].innerHTML=TArray[i];
            TD[i].className="TdOut";
            TD[i].cs="TdOut";
            if(new Date().getYear()==y&&new Date().getMonth()+1==m&&new Date().getDate()==TArray[i]){
                TD[i].className="TdOver";
                TD[i].cs="TdOver";
                }
            }
        }
    this.JumpToRun=function(action){
        var YearNO=YearTD.innerText.split(' ')[0];
        var MonthNO=MonthTD.innerText.split(' ')[0];
        if(action=="b"){
            if(MonthNO=="1"){
                MonthNO=13;
                YearNO=YearNO-1;
                }
            MonthTD.innerText=MonthNO-1+" 月";
            YearTD.innerText=YearNO+" 年";
            this.RewriteTableStr(YearNO,MonthNO-1);
            }
        if(action=="n"){
            if(MonthNO=="12"){
                MonthNO=0;
                YearNO=YearNO-(-1);
                }
            YearTD.innerText=YearNO+" 年";
            MonthTD.innerText=MonthNO-(-1)+" 月";
            this.RewriteTableStr(YearNO,MonthNO-(-1));
            }
        }
    this.AlertDay=function(){
        if(event.srcElement.innerText!=" ")
        document.all('oText').value=YearTD.innerText.split(' ')[0]+"年"+MonthTD.innerText.split(' ')[0]+"月"+event.srcElement.innerText+"日";
        }
    return this;
    }
document.all('oDiv').innerHTML=TableFunction().GetTableStr(new Date().getYear(),new Date().getMonth()+1);
</Script>
<span style="border:1px solid menu;">
<input type="text" id="oText" onpropertychange="document.all('oDiv').style.display='none';" style="border:0px;width:140px;height:20px;" readonly><input type="button" style="font:12pt webdings;border:0px;width:18px;height:20px;cursor:hand;" value="6" onclick="document.all('oDiv').style.display='inline';" onfocus="blur();"></span>
<div id="oDiv" style="display:none;"></div>

Javascript实现万年历(日历表) <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> .main { width: 800px; margin: 0 auto; } ... 阅读详情

相关推荐

日历android实训报告,EAD万年历实训报告及Verilog HDL源码

《EDA技术及应用》实训报告1系统设1.1 设计要求1.1.1 设计任务设计并制作一台数字日历。1.1.2 性能指标要求⑴用Verilog HDL语言设计一个数字日历。⑵数字日历能显示年、月、日、时、分和秒。⑶通过开关分别控制对年、月、日或时、分、秒校对及自动切换、,并且运用按钮对年、月、日或时、分、秒校对。⑷通过按钮对数码管全部清零。1.2 设计思路及设计框图1.2.1设计思路通过EDA课程...

weixin_42392689的博客 2257

css简易的进度条

<!DOCTYPEhtml> <htmllang="en"> <head> <metacharset="UTF-8"> <metaname="viewport"content="width=device-width,initial-scale=1.0"> <metahttp-eq...

qq_45723045的博客 1035

JavaScript实现万年历(附完整源码)

JavaScript实现万年历(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 691

JAVA Script实现万年历

要实现万年历的效果,先要用简单的for循环判定当前输入的年份是否为闰年,即能被4整除不能被100整除和能被400整除的年份皆为闰年,则每年366天,而非闰年则每年365天,月份则按照一月、三月、五月、七月、八月、十月、腊月为31天,四月、六月、九月、十一月为30天,二月则为闰年29天,非闰年28天,这样即可判断出至输入年月间的天数,再根据 天数%7+1 即可判断出周几。通过VScode编写JS代码实现万年历小程序,即输入年份以及月份,系统打印出该月的日历表。

weixin_47880640的博客 864

JavaScript制作的互动式万年历项目

本文还有配套的精品资源,点击获取 简介:JavaScript编写的万年历是一个利用JavaScript语言在Web浏览器中实现的动态日期显示工具,包括日期选择、特定日期标记和用户友好的日历界面。该教程涵盖JavaScript基础知识,DOM操作,以及编写处理日历逻辑的函数。项目包括创建日期和事件管理功能,使用HTML、CSS和JavaScript实现完整的Web日历应用,增...

weixin_42315569的博客 1239

支持农历节日节气的JavaScript万年历控件实战实现

JavaScript万年历控件不仅是网页中常见的日期选择工具,更是融合公历、农历、节气、节日等多种时间维度的综合性时间展示系统。其广泛应用于日程管理、民俗查询、农事指导、文化展示等场景,尤其在需要支持中国传统历法的应用中不可或缺。当内置方法无法满足需求时(如),需编写通用格式化器:// 使用formatDate(new Date(), 'YYYY年MM月DD日');// "2025年04月05日"扩展性说明- 支持链式替换,易于添加新占位符(如hh表示12小时制);

weixin_30591519的博客 1322

JS版日历黄历万年历源码:开启智能日历新纪元

JS版日历黄历万年历源码:开启智能日历新纪元 【下载地址】JS版日历黄历万年历源码介绍 这是一个功能丰富的JS版日历、黄历、万年历开源项目,专为开发者设计。它提供每日宜忌、吉凶、农历、节气、节日等全面信息,满足各类日历需求。源码完全基于JavaScript编写,易于集成和二次开发,适合各类项目使用。只需简单引入JS文件,...

gitblog_06721的博客 721

创建交互式JavaScript万年历控件:全面指南与实践

在构建Web应用时,选择合适的JavaScript库或框架是至关重要的一步。库和框架都是为了提高开发效率和代码复用,但它们的工作方式不同。JavaScript库如jQuery、Zepto等提供了一系列预先编写的函数,帮助开发者处理常见的任务,如DOM操作、事件处理、动画等,它更像是工具箱,开发者从中选取合适的工具来解决问题。而框架如React、Vue、Angular等则提供了一套完整的开发模式和架构,开发者需要按照框架的规则来进行项目开发,框架不仅提供了工具,还有明确的代码组织方式和数据流向。

weixin_42590539的博客 1133

JS版日历、黄历、万年历源码介绍

JS版日历、黄历、万年历源码介绍 【下载地址】JS版日历黄历万年历源码介绍 这是一个功能丰富的JS版日历、黄历、万年历开源项目,专为开发者设计。它提供每日宜忌、吉凶、农历、节气、节日等全面信息,满足各类日历需求。源码完全基于JavaScript编写,易于集成和二次开发,适合各类项目使用。只需简单引入JS文件,调用API接...

gitblog_06768的博客 593

js 万年历 同百度

NULL 博文链接:https://yjkun.iteye.com/blog/1528445

Lumerical Python API实战指南(一)——从数据优化到自动化工作流

本文是Lumerical Python API实战指南,旨在帮助用户从繁琐的手动仿真操作转向智能自动化工作流。文章详细介绍了API环境的零基础搭建、核心操作(会话管理、命令执行与数据交换),并通过参数扫描与自动化分析流水线的实战案例,展示了如何利用Python脚本实现从数据优化到自动化仿真的全过程,显著提升光子设计效率。

xxx12的博客 567

(万年历三)利用js在html页面打印万年历

简述 之前写过在java中纯算法控制台打印万年历: (万年历一)JAVA在控制台输出万年历(1900年起) 利用java中的calender对象在控制台打印万年历: (万年历二)JAVA在控制台输出万年历(Calendar版) 这次咱们与前面的原理一样,利用js中的Date对象计算日历,在用dom操作在页面中渲染出来。 效果 在输入框中按格式出入日期,提交后便可在页面中显示日历: 思路 思路与前一版使用java的calender对象类似,利用Js的Date对象获得指定日期月份的总天数,月份第一天为星期几,

个人网站:https://www.longzipeng.online 2488

3D Gaussian Splatting:用于实时的辐射场渲染

3D Gaussian Splatting:用于实时的辐射场渲染 3d gaussian splatting for real-time radiance field rendering

m0_51976564的博客 1万+

JavaScript实现万年历【展示前后月补充日期、可上下月份切换】

最近在产品业务开展中,碰到了有使用日历展示数据的需求,当即想起来了js常用案例——万年历的实现,这里做的相对简单,只需获取本月的日历展示出来即可,没有添加手动切换的功能,后续更新会补充。 首先,我们先来看一下最终要实现的效果,即UI设计图: (这里只讨论万年历展示的实现,业务数据展示已马赛克,请见谅~~) 在设计图中我们可以看出,首尾的灰色部分为上月和下月的相关日期补充,蓝色部分为本月日...

miracle__Y的博客 2265

ANSYS 有限元分析 接触分析

目 录一、前沿二、接触单元类三、接触单元关键选项3.1 CONTA174 KeyOption3.2 TARGE170 KeyOption四、接触分析标准步骤4.1 定义实常数4.2 定义接触和目标单元4.3 创建接触和目标单元五、接触分析实例5.1 MPC5.2 标准接触六、尾声七、参考文献 阿阳的 ANSYS 使用指南,本文仅用于个人学习,除此之外,无其他任何用途。 ANSYS 有限元分析 概述 ANSYS 有限元分析 坐标系/工作平面 ANSYS 有限元分析 几何建模 ANSY

Hulunbuir 4万+

信息收集-服务器信息

服务器上面可以运行大量的系统服务和第三方应用服务,如果操作系统或者第三方软件没有及时升级打补丁,攻击者就有可能直接通过服务器上运行的服务进行攻击。

weixin_49349476的博客 1446

前端:运用js制作一个万年历程序

不知道大家看不看日历,反正小编是看的,大一大二的时候常常想实现一个万年历的程序,但是苦于当时自己技术不行,做不出来,现在小编学习了js,于是自己终于往往整整实现了一个万年历程序,希望大家喜欢。

坚持不懈的大白的博客 4573

【AI Agent】Hermes Agent解析

Hermes Agent:一个具备持久化学习能力的开源AI Agent框架 核心特点: 突破传统Agent的"无状态困境",通过记忆系统(SQLite+FTS5全文检索)实现跨会话经验积累 支持200+模型自由切换,11种模型家族和15+平台接入 五层架构设计(入口层、编排层、推理层、工具执行层、存储层)实现平台无关性 47+内置工具和动态技能沉淀机制,支持从任务执行中自动提炼可复用Skill 独特的四层记忆体系(会话/每日/长期/向量索引)和辩证式用户建模 与传统Agent对比: 具备自我进化能力,通过A

sysu_lluozh 928

javascript 的日历控件

日历控件是我们经常使用的,本文把常用的几款日历总结如下。 1.下拉日历梅花雨版第1款点评:最经典的几乎完美了。代码:...@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>html  >head runat="server">    titl

xinpenyou的专栏 1171

mpv 源码深度解析:从 MPlayer 遗产到现代媒体播放器架构

做减法优于做加法:不值得维护的功能就移除(DVD 菜单、流缓存等)单线程事件驱动:核心逻辑在单线程中运行,通过 dispatch 队列处理并发分离关注点:demuxer 线程、VO 线程、脚本线程各司其职质量优先:使用 GPU 着色器而非固定功能硬件,默认软件解码(更可靠)可嵌入性:libmpv API 让 mpv 可以作为库嵌入其他应用mpv 是一个用纯 C 实现的、工程质量极高的媒体播放器。它的代码库展示了一个事实:C 语言完全可以通过良好的架构设计来实现复杂的多媒体系统。

世界那么大,我想去看看~【随心更新,看世界去了😄】 85

YOLO11数据增强中的色彩空间变换:HSV、YUV等增强技术的原理、实现与参数调优全解析

摘要 本文介绍了色彩空间的基本概念及其在数据增强中的应用,重点分析了HSV色彩空间的原理与特性。色彩空间作为颜色表示的数学模型,在计算机视觉中具有重要作用,RGB、HSV、YUV等常用色彩空间各有特点。数据增强中的色彩变换能提升模型鲁棒性、缓解数据不平衡并防止过拟合。HSV色彩空间将颜色分为色调(H)、饱和度(S)和明度(V)三个独立分量,更符合人类视觉感知,便于针对性调整图像属性。文章详细阐述了HSV与RGB的转换公式,为YOLO11等目标检测框架的数据增强提供了理论基础。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 286
上一篇: asp日历(原创黑闪)
下一篇: 按时间模糊查询的问题
fjp813
博客等级 码龄23年 4粉丝 97原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值