网页版日历
2015-09-20 10:33
483 查看
这里script写在了body后面,如果写在其前面,在加载script时会找不到加载的位置,而导致出现空白页,还有值得注意的地方,就是在输入
年月时,获取到的值是字符型的,所以要经行强转,后面才能正确的经行计算。
// JavaScript Document
var year=0;
do{
year=parseInt(prompt(“请输入年份:”));
}while( year<1900);
var month=0;
do{
//前面不管你是怎么定义的,在输入的时候还是会,变成字符型的,所以要进行强转
month=parseInt(prompt(“请输入月份:”));
}while( month<1||month>12);
//求出总天数
var sum=getTotalDays( year, month);
var weekDay=sum%7;
document.write(“
“+”星期天 星期一 星期二 星期三 星期四 星期五 星期六 “+”
“);
//2. 根据 weekDay输出空格, 注意: 输出空格后,不能换行
for( var i=0;i
document.write(” “);
}
// 3. 输出从1到这个月的最后一天(在此之前,必须先求出 year年的month月有多少天).
//求出year,month月有多少天
var days=getDays( year, month);
for( var i=1;i<=days;i++){
if(i<10){document.write(” “);}
if( isCurrentDay( year, month, i) ){
document.write( “”+i+” “);
}else{
document.write(“”+i+” “);
}
//3.1 当前的号数+weekDay %7 ==0 => 加入换行,否则不换
if( (i+weekDay)%7==0){
document.write(”
“);
}
}
document.write(”
“);
//判断是否为当前这个一天…
function isCurrentDay(year,month,i){
//取出系统的当前时间
rightNow = new Date();
//System.out.println( rightNow);
//再从这个时间取出 年, 月,日
var y=rightNow.getFullYear(); // Calendar.YEAR 表示你要取的是年的值
var m=rightNow.getMonth() +1; // Calendar.MONTH表示要取的是月份的值,但月份从0开始算的. 所以要加1
var d= rightNow.getDate();
//System.out.println( y + ” “+ m +” “+ d );
//再比较是否等于 year, month, i
if( year==y && month==m && i==d ){
return true;
}else{
return false;
}
}
//求出year年month月的一号距 1900.1.1有多少天
function getTotalDays( year, month){
//累计天数
var sum=0;
//1. 求出1900到 year-1那一年的总天数
for( var i=1900;i
if( isRun( i ) ){
sum+=366;
}else{
sum+=365;
}
}
//2. 求出 1到month-1 月的天数
for( var i=1;i
sum+=getDays( year, i );
}
// 3. 再多加一个1 ( 1号)
sum=sum+1;
return sum;
}
//求出闰平年: 闰年就返回true, 平年就返回false
function isRun( year ){
if (year % 4 == 0 && !(year % 100 == 0) || year % 400 == 0) { // 判断是否为闰年
return true;
} else {
return false;// 平年
}
}
function getDays( year, month){
//求出month月有多少天,但注意,如是2月,要判断闰平年
//返回值是一个数字.
var days=0;
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days = 31;
break;
case 2:
if ( isRun( year) ) {
days = 29;
} else {
days = 28;
}
break;
default:
days = 30;
break;
}
return days;
}
年月时,获取到的值是字符型的,所以要经行强转,后面才能正确的经行计算。
// JavaScript Document
var year=0;
do{
year=parseInt(prompt(“请输入年份:”));
}while( year<1900);
var month=0;
do{
//前面不管你是怎么定义的,在输入的时候还是会,变成字符型的,所以要进行强转
month=parseInt(prompt(“请输入月份:”));
}while( month<1||month>12);
//求出总天数
var sum=getTotalDays( year, month);
var weekDay=sum%7;
document.write(“
“+”星期天 星期一 星期二 星期三 星期四 星期五 星期六 “+”
“);
//2. 根据 weekDay输出空格, 注意: 输出空格后,不能换行
for( var i=0;i
document.write(” “);
}
// 3. 输出从1到这个月的最后一天(在此之前,必须先求出 year年的month月有多少天).
//求出year,month月有多少天
var days=getDays( year, month);
for( var i=1;i<=days;i++){
if(i<10){document.write(” “);}
if( isCurrentDay( year, month, i) ){
document.write( “”+i+” “);
}else{
document.write(“”+i+” “);
}
//3.1 当前的号数+weekDay %7 ==0 => 加入换行,否则不换
if( (i+weekDay)%7==0){
document.write(”
“);
}
}
document.write(”
“);
//判断是否为当前这个一天…
function isCurrentDay(year,month,i){
//取出系统的当前时间
rightNow = new Date();
//System.out.println( rightNow);
//再从这个时间取出 年, 月,日
var y=rightNow.getFullYear(); // Calendar.YEAR 表示你要取的是年的值
var m=rightNow.getMonth() +1; // Calendar.MONTH表示要取的是月份的值,但月份从0开始算的. 所以要加1
var d= rightNow.getDate();
//System.out.println( y + ” “+ m +” “+ d );
//再比较是否等于 year, month, i
if( year==y && month==m && i==d ){
return true;
}else{
return false;
}
}
//求出year年month月的一号距 1900.1.1有多少天
function getTotalDays( year, month){
//累计天数
var sum=0;
//1. 求出1900到 year-1那一年的总天数
for( var i=1900;i
if( isRun( i ) ){
sum+=366;
}else{
sum+=365;
}
}
//2. 求出 1到month-1 月的天数
for( var i=1;i
sum+=getDays( year, i );
}
// 3. 再多加一个1 ( 1号)
sum=sum+1;
return sum;
}
//求出闰平年: 闰年就返回true, 平年就返回false
function isRun( year ){
if (year % 4 == 0 && !(year % 100 == 0) || year % 400 == 0) { // 判断是否为闰年
return true;
} else {
return false;// 平年
}
}
function getDays( year, month){
//求出month月有多少天,但注意,如是2月,要判断闰平年
//返回值是一个数字.
var days=0;
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days = 31;
break;
case 2:
if ( isRun( year) ) {
days = 29;
} else {
days = 28;
}
break;
default:
days = 30;
break;
}
return days;
}
相关文章推荐
- Python+OpenCV学习(17)---摄像机标定
- BestCoder Round #56 (div.2) (部分)
- 尴尬君正,是如何被“创新”带到沟里去的?
- iOS-Andriod百度地图仿百度外卖-饿了么-选择我的地址-POI检索/
- 抄360于Launcher浮动窗口的屏幕显示内存使用情况(改进版)
- wpf 类似TextBlock外观的Button的样式
- 【linux学习笔记二】常见目录的作用
- 一个谱聚类MATLAB实现分享
- 信息技术论文
- const int a; int const a; const int *a; int * const a; const int * const a;
- 软件测试七大原则与分类
- 软件测试七大原则与分类
- 进程与线程
- 2015年年度总结
- java面向对象编程基础(三大特点)讲解
- 不再纠结环境
- apk 升级
- 单核多线程与多核多线程的区别---总结
- JVM的内存分配原理
- Java运算符