当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript blog式日历控件新算法

Javascript
推荐js实现商品分类到搜索栏友好提示(人机交互)
attachEvent的使用方法与传递参数[IE|firefox]
用javascript实现鼠标框选
一个不错的动感导航菜单
JavaScript网页制作特殊效果用随机数
一段非常好的滑动门[可感应触发或点击触发]兼容IE7 IE6 FireFox Opera
js实现的的 文字自动''到google search框
JS值当前DIV的ID值的代码
在javascript中,如果删除二维数组中重复的元素
一个用js实现的页内搜索代码
不用MOUSEMOVE也能滑动啊
asp 的 分词实现代码
更正确的asp冒泡排序
用Javscript实现表单复选框的全选功能
向fckeditor编辑器插入指定代码的方法
javascript实现 在光标处插入指定内容
如何实现动态删除javascript函数
javascript父子通信
JS获取scrollHeight问题想到的标准问题
從博客網扣了一個效果出來

Javascript 中的 JavaScript blog式日历控件新算法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 285 ::
收藏到网摘: n/a

近来要做一个记事本系统,想找一个合适的日历控件,但网上的都是那种日历选择控件。 于是到qq的记事本系统找了一个,但里面的算法有点落后,所以用了它的样式自己写了个。 使用说明:
程序比较简单,代码中都有说明,这里说说怎么使用。
首先是实例化一个Calendar,并设置参数。
参数说明:
Year:要显示的年份
Month:要显示的月份
SelectDay:选择日期
onSelectDay:在选择日期触发
onToday:在当天日期触发
onFinish:日历画完后触发
一般SelectDay设置成选择了的日期,并在onSelectDay中设置一个函数用来设置这个日期的样式,
例如实例里SelectDay设置成今个月10号并在那天样式设为onSelect:
复制代码 代码如下:

SelectDay: new Date().setDate(10),
onSelectDay: function(o){ o.className = "onSelect"; },

而onToday就用来设置今日日期的样式,
例如实例里面把今天的日期的样式设为onToday:
onToday: function(o){ o.className = "onToday"; },
在onFinish中可以放需要设置日历的程序。
可以通过this.Year和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>";
}
实例中是固定了这个日期列表,实际应用中可以根据年份月份获取对应的日期列表,
个人推荐用年份月份通过ajax获取。
程序中还有两个有用的方法PreMonth(显示上一个月)和NextMonth(显示下一个月)。
测试代码:
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]