一款兼容性好,自动变化的javascript 祝贺词代码(根据不同的节日自动显示不同的祝贺词)
2014-03-05 00:58
447 查看
做网站的时候,特别是给官方网站做门户网站,一般遇到一些节日,还得给员工显示些祝贺词,要是让我一个节日PS一个图然后改上去,那多麻烦,还是重复的活,作为一个程序员不应该做那么多重复的事情,呵呵,所以我一次性PS了一年内比较重视的几个节日 如春节,妇女节,劳动节,教师节(我还是学生,这是给学校做的网站提的Dan疼要求哦)分别命名为1.jpg,3.jpg,5.jpg,9.jpg ,然后用javascript 些个浮动图片的效果, 关键是在 html 的<img>标签中使用动态绑定src的路径,然后把获得的月份按照字符串拼接进去就实现了动态显示祝贺词的功能。
当然,想到这里,当不需要祝贺词的节日只需要将对应的祝贺词隐藏就行了(因为本菜鸟不是专注做UI的,所以这里着实花了几个小时的时间),不过总算有了预期的成果,好了,拿出来和有类似需求的童鞋们分享一下
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/proud.gif)
。
注意:我的图片和ad.js文件都是在和html 文件同级festival 文件夹下
下面呈上我用到的几张素材祝贺词图片,如果有需要的直接下载下来改下名字就行了(最后一张图片无法显示,我把原版的javascript 文件 改后缀后上传了
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/laugh.gif)
,要下载的自便):
![](http://img.blog.csdn.net/20140305010023187?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbF9mMHJtNHQzZA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![](http://img.blog.csdn.net/20140305010049578?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbF9mMHJtNHQzZA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![](http://img.blog.csdn.net/20140305010106875?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbF9mMHJtNHQzZA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![](http://img.blog.csdn.net/20140305010134046?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbF9mMHJtNHQzZA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![](http://img.blog.csdn.net/20140305010143265?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbF9mMHJtNHQzZA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
![](http://img.blog.csdn.net/20140305010153328?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbF9mMHJtNHQzZA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
当然,想到这里,当不需要祝贺词的节日只需要将对应的祝贺词隐藏就行了(因为本菜鸟不是专注做UI的,所以这里着实花了几个小时的时间),不过总算有了预期的成果,好了,拿出来和有类似需求的童鞋们分享一下
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/proud.gif)
。
<!--advertisement code in html body--> <body> <!-- for advertisement note: take the right pic path below and in ad.js path total four place--> <div id="oImg" style="position: absolute; z-index: 100; top: 0; left: 0; width: 180px; height: 70px;"> <a href="http://gh.swpu.edu.cn" target="_blank"> <img src="festival/3.jpg" id='imgId' style='display:none'/> </a> </div> <script type="text/javascript" src="festival/ad.js"></script> <!--end for advertisement --> </body>
// out link javascript code in ad.js window.onload = function() { var img = document.getElementById('imgId'); var src = img.getAttribute('src'); // care the right file path : festival/ var month = (new Date().getMonth()+1).toString(); //alert(month); if(month == '1' ||month == '3' || month == '5' || month == '9'||month == '10' ) { img.setAttribute('src','festival/'+month+'.jpg'); img.style.display = "block"; } else { var div = document.getElementById('oImg'); img.style.display = "none"; div.style.display = "none"; //隐藏而不删除 } }; var floatImg = document.getElementById("oImg"); var delay = 10; //控制每次执行间隔的时间,做越大移动得越慢; var speed = 1; //控制每次执行移动的距离,值越大移动得越快; var flagX = 0; var flagY = 0; function toPixel(str1) { //该函数用于去掉数值后面的px,并将之转化为数字。 var oldLen = str1.length; var newLen = oldLen - 2; str2 = str1.slice(0, newLen); str3 = parseInt(str2); return str3; } function flowImg() { var bWidth = document.body.clientWidth; var bHeight = document.body.clientHeight; var bLeft = document.body.scrollLeft; var bTop = document.body.scrollTop; var iWidth = floatImg.offsetWidth; var iHeight = floatImg.offsetHeight; var iLeft = toPixel(floatImg.style.left); var iTop = toPixel(floatImg.style.top); //下面一段控制横向移动 if(iLeft < (bWidth - iWidth) && flagX == 0) { floatImg.style.left = (iLeft + speed) + "px"; } else if(iLeft >= (bWidth - iWidth) && flagX ==0) { flagX = 1; } else if(iLeft > 0 && flagX == 1) { floatImg.style.left = (iLeft - speed) + "px"; } else if(0 >= iLeft && flagX == 1) { flagX = 0; } //下面一段控制纵向移动 if(iTop < (bHeight - iHeight) && flagY == 0) { floatImg.style.top = (iTop + speed) + "px"; } else if(iTop >= (bHeight - iHeight) && flagY ==0) { flagY = 1; } else if(iTop > 0 && flagY == 1) { floatImg.style.top = (iTop - speed) + "px"; } else if(0 >= iTop && flagY == 1) { flagY = 0; } } var imgInterval = setInterval("flowImg()", delay); floatImg.onmouseover = function() {clearInterval(imgInterval);} floatImg.onmouseout = function() {imgInterval = setInterval("flowImg()", delay);}
注意:我的图片和ad.js文件都是在和html 文件同级festival 文件夹下
下面呈上我用到的几张素材祝贺词图片,如果有需要的直接下载下来改下名字就行了(最后一张图片无法显示,我把原版的javascript 文件 改后缀后上传了
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/laugh.gif)
,要下载的自便):
相关文章推荐
- 基于html5背景图片自适应代码是一款背景不随滚动条滚动,会根据分辨率不同自动匹配对应的背景图片
- 根据地区不同显示时间的javascript代码
- 自动根据视频文件类型选择不同播放器的JAVASCRIPT代码
- 根据地区不同显示时间的javascript代码
- 根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
- Android动态来改变App桌面图标--根据不同节日显示不同logo
- javascript页面动态显示时间变化示例代码
- 根据当前时间返回不同文本,JavaScript代码
- 根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
- 根据判断PC浏览器类型和手机屏幕像素自动调用不同CSS的代码
- 根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
- jsp中 根据传入值,采用javascript自动显示标签下拉选项
- 如何让从数据库中查询出符合条件的记录,然后给每个记录自动加上序号,序号是根据符合条件的记录多少在随时变化.而且也会在以查询生成的报表中显示出来.谢谢
- javascript 网页设计 怎么在同一位置显示几张不同的图片(图片自动变换)
- javascript 根据select所选项的不同显示和隐藏部分内容
- android linearLayout 根据不同的分辨率自动调整 显示大小
- 根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
- 【代码笔记】iOS-屏幕根据键盘自动的变化高度
- 【代码笔记】iOS-屏幕根据键盘自动的变化高度