问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

日历效果的网页代码要怎么做

发布网友 发布时间:2022-04-29 15:05

我来回答

1个回答

热心网友 时间:2022-04-21 20:29

网上找的:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>博客专用的JS日历控件</title>
<meta http-equiv="content-type" content="text/html;charset=gb2312">
<style type="text/css">
.Calendar {
font-family:Verdana;
font-size:9pt;
background-color:#EEE;
text-align:center;
width:198px;
height:158px;
padding:10px;
line-height:1.5em;
}
.Calendar a{
color:#0066CC;
}
.Calendar table{
width:100%;
border:0;
}
.Calendar table thead{color:#acacac;}
.Calendar table td {
font-size: 11px;
padding:1px;
}
#idCalendarPre{
cursor:pointer;
float:left;
padding-right:5px;
}
#idCalendarNext{
cursor:pointer;
float:right;
padding-right:5px;
}
#idCalendar td.onToday {
font-weight:bold;
color:#C60;
}
#idCalendar td.onSelect {
font-weight:bold;
}
</style>
<script type="text/javascript">
var $ = function (id) {
return "string" == typeof id ? document.getElementById(id) : id;
};
var Class = {
create: function() {
return function() {
this.initialize.apply(this, arguments);
}
}
}
Object.extend = function(destination, source) {
for (var property in source) {
destination[property] = source[property];
}
return destination;
}
var Calendar = Class.create();
Calendar.prototype = {
initialize: function(container, options) {
this.Container = $(container);//table结构容器
this.Days = [];//日期列表
this.SetOptions(options);
this.Year = this.options.Year;
this.Month = this.options.Month;
this.SelectDay = this.options.SelectDay ? new Date(this.options.SelectDay) : null;
this.onSelectDay = this.options.onSelectDay;
this.onToday = this.options.onToday;
this.onFinish = this.options.onFinish;
this.Draw();
},

SetOptions: function(options) {
this.options = {//默认值
Year: new Date().getFullYear(),
Month: new Date().getMonth() + 1,
SelectDay: null,//选择日期
onSelectDay: function(){},
onToday: function(){},
onFinish: function(){}
};
Object.extend(this.options, options || {});
},
//上月
PreMonth: function() {
//取得上月日期对象
var d = new Date(this.Year, this.Month - 2, 1);
//设置属性
this.Year = d.getFullYear();
this.Month = d.getMonth() + 1;
//重绘日历
this.Draw();
},
//下一个月
NextMonth: function() {
var d = new Date(this.Year, this.Month, 1);
this.Year = d.getFullYear();
this.Month = d.getMonth() + 1;
this.Draw();
},

Draw: function() {
//保存日期列表
var arr = [];
//用当月第一天在一周中的日期值作为当月离第一天的天数
for(var i = 1, firstDay = new Date(this.Year, this.Month - 1, 1).getDay(); i <= firstDay; i++){ arr.push(" "); }
//用当月最后一天在一个月中的日期值作为当月的天数
for(var i = 1, monthDay = new Date(this.Year, this.Month, 0).getDate(); i <= monthDay; i++){ arr.push(i); }
// /
var frag = document.createDocumentFragment();
this.Days = [];
while(arr.length > 0){
//每个星期插入一个tr
var row = document.createElement("tr");
//星期
for(var i = 1; i <= 7; i++){
var cell = document.createElement("td");
cell.innerHTML = " ";
if(arr.length > 0){
var d = arr.shift();
cell.innerHTML = d;
if(d > 0){
this.Days[d] = cell;
//获取今日
if(this.IsSame(new Date(this.Year, this.Month - 1, d), new Date())){ this.onToday(cell); }
//判断用户是否作了选择
if(this.SelectDay && this.IsSame(new Date(this.Year, this.Month - 1, d), this.SelectDay)){ this.onSelectDay(cell); }
}
}
row.appendChild(cell);
}
frag.appendChild(row);
}
//此先清空然后再插入(ie的table不能用innerHTML)
while(this.Container.hasChildNodes()){ this.Container.removeChild(this.Container.firstChild); }
this.Container.appendChild(frag);
this.onFinish();
},
//判断是否同一日
IsSame: function(d1, d2) {
return (d1.getFullYear() == d2.getFullYear() && d1.getMonth() == d2.getMonth() && d1.getDate() == d2.getDate());
}
};
</script>
</head>
<body>
<div class="Calendar">
<div id="idCalendarPre"><<</div>
<div id="idCalendarNext">>></div>
<span id="idCalendarYear">2008</span>年 <span id="idCalendarMonth">8</span>月
<table cellspacing="0">
<thead>
<tr>
<td>日</td>
<td>一</td>
<td>二</td>
<td>三</td>
<td>四</td>
<td>五</td>
<td>六</td>
</tr>
</thead>
<tbody id="idCalendar">
</tbody>
</table>
</div>
<script language="JavaScript">
var cale = new Calendar("idCalendar", {
SelectDay: new Date().setDate(10),
onSelectDay: function(o){ o.className = "onSelect"; },
onToday: function(o){ o.className = "onToday"; },
onFinish: function(){
$("idCalendarYear").innerHTML = this.Year; $("idCalendarMonth").innerHTML = this.Month;
var flag = [10,15,20];
for(var i = 0, len = flag.length; i < len; i++){
this.Days[flag[i]].innerHTML = "<a href='javascript:void(0);' onclick=\"alert('您选择的日期是:"+this.Year+"/"+this.Month+"/"+flag[i]+"');return false;\">" + flag[i] + "</a>";
}
}
});
$("idCalendarPre").onclick = function(){ cale.PreMonth(); }
$("idCalendarNext").onclick = function(){ cale.NextMonth(); }
</script>
</body>
</html>
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
柏林地铁路线 高三敬业话题作文800字 怀孕可以吃羊肉米粉吗 坐月子能不能吃羊肉粉 坐月子吃羊肉的好处 卜蜂蛋鸡预混料配方 怀孕多久后才能吃羊肉粉 一个人不花钱完美世界国际版玩什么职业最好?多谢了 女孩也会花心吗? 女生也会花心么? 三孔附近有什么好玩的地方 上海浦东成人学钢琴哪里好? 网页里做一个日程表 求制作日历的网站或软件 儿童拼音字母表 我要制作网页,请问下日历,时间和星期怎么弄呀? 网页设计之日历设置方法 求大家帮我发个网页代码。(制作一个日历) 想要在网页中添加一个日历,要怎么做 2012年下半年阿克苏教师资格证的报名时间? 八寸戚风蛋糕的做法,八寸戚风蛋糕怎么做好吃 戚风蛋糕(8寸)怎么做 流量有了,转化率却提不上去? 成都工业学院的学术研究 新余虎跃学校计划什么时候开学 大神可以发个ym1分11秒视频吗,谢谢谢谢!430887704艾特球球点卡目 广州番禺职业技术学院的学术研究 《中国学术期刊全文数据库》的词频控制应在什么场合下使用 球球亲爱的公主病全集网盘链接 个人所得税申报时间规定是什么 求 球球大作战代点链接下载 现在上海钢琴家教,上门授课的那种,一般是什么价格?一节课多长时间? 儿童的拼音是什么? 请问在哪可以找到在线制作日历的网站 上海陪练钢琴! dreamweaver网页制作日历表成品!! 关于儿童的拼音 摘抄新闻消息的标题和导语500字 苹果紧急求救短信怎么发 儿童拼音d,t,n,l歌 作文 写一则消息 有电头 导语 主体 结语 500字 作文(国内的重要新闻)五百字 经济师中级职称 有什么用? 新闻消息作文500字 少儿两个字的拼音 少儿频道的拼音 最新新闻500字左右有时间地点人物的 怎么知道对方是否被封? 根据一段小新闻 写一篇作文五百字 新闻消息5oo字作文,急求 怎么知道好友被封了?