用jquery写的一个万年历(自写)

所属分类: 网络编程 / JavaScript 阅读数: 635
收藏 0 赞 0 分享
复制代码 代码如下:

<!Doctype html><html xmlns=http://www.w3.org/1999/xhtml>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
<style>
.main{
width:600px;
height:350px;
background:gray;
margin-left: auto;
margin-right: auto;
overflow:hidden;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
}
.title{
text-align:center;
}
.date{
float:left;
padding-left:31px;
}
.date1{
float:left;
width:20px;
height:20px;
padding-top:10px;
padding-left:30px;
padding-right:30px;
}
.content{
margin-left:25px;
}
</style>
<script type="text/javascript" src="jquery.min.js"></script>
<script>
function getTime(year,month,day){
y = year
m = month
d = day
var myDate = new Date(year,month-1,day);
return myDate;
}
function days_in_month(year, month) {
y = year;
m = month;
return 32 - new Date(y, m - 1, 32).getDate();
}
function view(year,month){

var w = getTime(year,month,1).getDay()-1;
var num = days_in_month(year,month);
var index = 1;
//console.log(w);
var data = new Array();
for(var d = 0; d < num+w; d++){
if(d<w){
data[d] = '';
}else{
data[d] = index;
index++;
}
}
$("#content").html('');
for(var k =0;k < data.length;k++){
if(k%7==0){
$("#content").append("<div id='t"+k+"' class='date1'>"+data[k]+"</div><br>");
}else{
$("#content").append("<div id='t"+k+"' class='date1'>"+data[k]+"</div>");
}
}
$("#content > div").mouseover(function(){
if($(this).text()!=''){
$(this).css('background','red');
}
});
$("#content > div").mouseout(function(){
if($(this).text()!=''){
$(this).css('background','gray');
}
});
}

$(document).ready(function (){
for(var t = 1970; t < 2999; t++){
$("#yearsel").append("<option value ='"+t+"'>"+t+"</option>");
}
for(var y = 1; y < 13;y++){
$("#monthsel").append("<option value ='"+y+"'>"+y+"</option>");
}
var year = new Date().getFullYear();
var month = new Date().getMonth()+1;
var day = new Date().getDate();
var w = getTime(year,month,1).getDay()-1;
var num = day + w -1;
$("#yearsel").change(function(){
year = $("#yearsel option:selected").text();
month = $("#monthsel option:selected").text();
view(year,month);
});
$("#monthsel").change(function(){
year = $("#yearsel option:selected").text();
month = $("#monthsel option:selected").text();
view(year,month);
});
var oDate = ['星期一','星期二','星期三','星期四','星期五','星期六','星期日',];
for(var i = 0;i < 7;i++){
$("#title").append("<div class='date'><b>"+oDate[i]+"</b></div>");
}
$("#yearsel option[value='"+year+"']").attr("selected", true);
view(year,month);
//标记当前日期
$("#t"+num).css('background','yellow');
});
</script>
</head>
<body>
<div id="main" class="main">
<center><h3>万年历</h3></center>
<select id="yearsel">
</select>年
<select id="monthsel">
</select>月<br><br>
<div id="title" class="title">
</div>
<div id="content" class="content">
</div>
</div>
</body>
</html>
更多精彩内容其他人还在看

JavaScript this关键字指向常用情况解析

这篇文章主要介绍了JavaScript this关键字指向常用情况解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享

Vue-cli打包后如何本地查看的操作

这篇文章主要介绍了Vue-cli打包后如何本地查看的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

vue cli 3.0通用打包配置代码,不分一二级目录

这篇文章主要介绍了vue cli 3.0通用打包配置代码,不分一二级目录,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

JavaScript事件循环及宏任务微任务原理解析

这篇文章主要介绍了JavaScript事件循环及宏任务微任务原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享

关于vue-cli3打包代码后白屏的解决方案

这篇文章主要介绍了关于vue-cli3打包代码后白屏的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

vue打包静态资源后显示空白及static文件路径报错的解决

这篇文章主要介绍了vue打包静态资源后显示空白及static文件路径报错的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

vue-cli3访问public文件夹静态资源报错的解决方式

这篇文章主要介绍了vue-cli3访问public文件夹静态资源报错的解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

JS继承实现方法及优缺点详解

这篇文章主要介绍了JS继承实现方法及优缺点详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
收藏 0 赞 0 分享

vue或react项目生产环境去掉console.log的操作

这篇文章主要介绍了vue或react项目生产环境去掉console.log的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享

解决vue组件没显示,没起作用,没报错,但该显示的组件没显示问题

这篇文章主要介绍了解决vue组件没显示,没起作用,没报错,但该显示的组件没显示问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多