jquery图片时钟
一、生成数字时钟
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
window.onload=function(){
var oBody=document.body;
var oP=document.getElementById("time");
setInterval(fnTime,1000);
fnTime();
function fnTime(){
var myTime=new Date();
var iHours=myTime.getHours();
var iMin=myTime.getMinutes();
var iSec=myTime.getSeconds();
var str=toTwo(iHours)+toTwo(iMin)+toTwo(iSec);
oP.innerHTML=str;
} }
/*将数字转换为字符串且一位数显示为两位,*/
function toTwo(n){
return n<10?'0'+n:''+n;
}
</script> <p id="time"></p>
效果:

二、将数字转换为图片
方法一:
图片名称即数字,用最简单的写法。
用到图片:











写一个函数strToImg(str)将一个字符串str中每一个数字转换为对应图片,然后动态创建<img>标签。
注意:每次调用需清空<p>标签中的内容。
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
window.onload=function(){
var oBody=document.body;
var oP=document.getElementById("time");
setInterval(fnTime,1000);
fnTime();
function fnTime(){
var myTime=new Date();
var iHours=myTime.getHours();
var iMin=myTime.getMinutes();
var iSec=myTime.getSeconds();
var str=toTwo(iHours)+toTwo(iMin)+toTwo(iSec);
//oP.innerHTML=str;
strToImg(str);
} }
/*将数字转换为字符串且一位数显示为两位,*/
function toTwo(n){
return n<10?'0'+n:''+n;
} function strToImg(str){
var str=str;
$("#time").empty();
for(var i=0;i<str.length;i++){
var oImg=$("<img />");
oImg.attr("src","images/"+str.charAt(i)+".png");
$("#time").append(oImg);
}
}
</script> <p id="time"></p>

方法二:【不适用】
如果图片名称不是纯数字,就用一个数组保存起来。
本方法操作dom太多,效率非常低,有时候6个节点显示不全。
因为我本意是查资料看到这样写涉及到图片预加载,以为可以加快效率。尝试了一下,现在看来还是不太懂预加载原理,留坑。
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
window.onload=function(){
var oBody=document.body;
var oP=document.getElementById("time"); setInterval(fnTime,1000);
fnTime();
} function fnTime(){
var myTime=new Date();
var iHours=myTime.getHours();
var iMin=myTime.getMinutes();
var iSec=myTime.getSeconds();
var str=toTwo(iHours)+toTwo(iMin)+toTwo(iSec);
//oP.innerHTML=str;
strToImg(str);
} /*将数字转换为字符串且一位数显示为两位,*/
function toTwo(n){
return n<10?'0'+n:''+n;
} function strToImg(str){
var str=str; var imageArray=[];
for(i=0;i<11;i++){
imageArray[i]=new Image();
}
//将个图像定义给相应的数组元素,使数组元素下标与图像所对应的数字字符一一对应
imageArray[0].src="data:images/0.png";
imageArray[1].src="data:images/1.png";
imageArray[2].src="data:images/2.png";
imageArray[3].src="data:images/3.png";
imageArray[4].src="data:images/4.png";
imageArray[5].src="data:images/5.png";
imageArray[6].src="data:images/6.png";
imageArray[7].src="data:images/7.png";
imageArray[8].src="data:images/8.png";
imageArray[9].src="data:images/9.png";
imageArray[10].src="data:images/fh.png"; $("#time").empty();
for(var i=0;i<str.length;i++){
var oImg=imageArray[str.charAt(i)];
//oImg.attr("src",imageArray[i].src);
$("#time").append(oImg);
}
}
</script> <p id="time"></p>
方法三:
将<img>标签硬编码在html中。
<p id="time"><img src="data:images/0.png"/><img src="data:images/0.png"/><img src="data:images/0.png"/><img src="data:images/0.png"/><img src="data:images/0.png"/><img src="data:images/0.png"/></p> <script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
window.onload=function(){
var oBody=document.body;
var oP=document.getElementById("time"); setInterval(fnTime,1000);
fnTime();
} function fnTime(){
var myTime=new Date();
var iHours=myTime.getHours();
var iMin=myTime.getMinutes();
var iSec=myTime.getSeconds();
var str=toTwo(iHours)+toTwo(iMin)+toTwo(iSec);
//oP.innerHTML=str;
strToImg(str);
}
var imageArray=[];
//将个图像定义给相应的数组元素,使数组元素下标与图像所对应的数字字符一一对应
imageArray[0]="images/0.png";
imageArray[1]="images/1.png";
imageArray[2]="images/2.png";
imageArray[3]="images/3.png";
imageArray[4]="images/4.png";
imageArray[5]="images/5.png";
imageArray[6]="images/6.png";
imageArray[7]="images/7.png";
imageArray[8]="images/8.png";
imageArray[9]="images/9.png";
imageArray[10]="images/fh.png"; /*将数字转换为字符串且一位数显示为两位,*/
function toTwo(n){
return n<10?'0'+n:''+n;
} function strToImg(str){
var str=str;
for(var i=0;i<str.length;i++){
$("#time").find("img").eq(i).attr("src",imageArray[str.charAt(i)]);
}
}
</script>
方法四:【推荐】
动态生成<img>标签,且高效的写法。
<p id="time"></p> <script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
window.onload=function(){
var oBody=document.body;
var oP=document.getElementById("time"); setInterval(fnTime,1000);
fnTime();
} function fnTime(){
var myTime=new Date();
var iHours=myTime.getHours();
var iMin=myTime.getMinutes();
var iSec=myTime.getSeconds();
var str=toTwo(iHours)+toTwo(iMin)+toTwo(iSec);
//oP.innerHTML=str;
strToImg(str);
} /*将数字转换为字符串且一位数显示为两位,*/
function toTwo(n){
return n<10?'0'+n:''+n;
} var imageArray=[];
//将个图像定义给相应的数组元素,使数组元素下标与图像所对应的数字字符一一对应
imageArray[0]="images/0.png";
imageArray[1]="images/1.png";
imageArray[2]="images/2.png";
imageArray[3]="images/3.png";
imageArray[4]="images/4.png";
imageArray[5]="images/5.png";
imageArray[6]="images/6.png";
imageArray[7]="images/7.png";
imageArray[8]="images/8.png";
imageArray[9]="images/9.png";
imageArray[10]="images/fh.png"; function strToImg(str){
var str=str;
var tempHtml='';
for(var i=0;i<str.length;i++){
var imgHtml="<img src="+imageArray[str.charAt(i)]+"/>";
tempHtml+=imgHtml;
}
$("#time").html(tempHtml);
}
</script>
本文作者starof,因知识本身在变化,作者也在不断学习成长,文章内容也不定时更新,为避免误导读者,方便追根溯源,请诸位转载注明出处:http://www.cnblogs.com/starof/p/4989059.html有问题欢迎与我讨论,共同进步。
jquery图片时钟的更多相关文章
- 推荐几款jquery图片切换插件
一.前言 毕业季到了,大家都在匆匆忙忙的记录大学里最美好的时光,照片中各种花式.各种姿势都涌现出来了.这么多的照片怎么展示出来给自己的好友看呢?有人选择做成视频,有人选择ps之后做成图片集,而我选择利 ...
- 适应手机端的jQuery图片滑块动画DEMO演示
在线预览 下载地址 实例代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...
- 精心挑选10款优秀的 jQuery 图片左右滚动插件
在现代的网页设计中,图片和内容滑块是一种极为常见和重要的元素.你可以从头开始编写自己的滑动效果,但是这将浪费很多时间,因为网络上已经有众多的优秀的 jQuery 滑块插件.当然,如果要从大量的 jQu ...
- Cropper – 简单的 jQuery 图片裁剪插件
Cropper 是一个简单的 jQuery 图像裁剪插件.它支持选项,方法,事件,触摸(移动),缩放,旋转.输出的裁剪数据基于原始图像大小,这样你就可以用它们来直接裁剪图像. 如果你尝试裁剪跨域图像, ...
- 美女jquery图片播放器插件
相册在线查看http://keleyi.com/keleyi/phtml/image/6.htm 可全屏,可拖动,可自动播放的jquery图片展示插件 使用说明:1.引用css文件:<link ...
- 12款经典的白富美型—jquery图片轮播插件—前端开发必备
图片轮播是网站中的常用功能,用于在有限的网页空间内展示一组产品图片或者照片,同时还有非常吸引人的动画效果.本文向大家推荐12款实用的 jQuery 图片轮播效果插件,帮助你在你的项目中加入一些效果精美 ...
- jQuery图片旋转展示收缩效果
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 我利用网上代码开发的JQuery图片插件
我利用网上代码开发的JQuery图片插件 代码如下 (function($){ $.fn.FocusPic = function(options){ var defaults = { interval ...
- 分享22款响应式的 jQuery 图片滑块插件
响应式(Responsive)设计的目标是要让产品界面能够响应用户的行为,根据不同终端设备自动调整尺寸,带给用户良好的使用体验.这篇文章收集了22款优秀的响应式 jQuery 幻灯片插件,它们能够帮助 ...
随机推荐
- 关于window.onload
window.onload是当文档加载完成后执行. <script>之间的代码会在代码加载到此处执行.function内的代码是调用时才执行. 但window.onload有个坏处,它非要 ...
- eclipse 常用设置,常用快捷键修改
eclipse 常用设置,常用快捷键,myeclipse和eclipse类似' 首先打开eclipse的首选项-->搜索 keys' 常用的一些快捷键: Ctrl+1 快速修复(最经典的快捷键, ...
- [outlook]打开以后就自动进入安全模式的解决方法。Outlook start in safe mode.
给客户写了一个Outlook的add-in, 用现在时髦的话应该叫outlook的app. 这个add-in的作用就是把outlook中的email,直接上传到SharePoint中.想要代码的联系我 ...
- 数据持久化之NSKeyedArchiver
基本的数据类型如NSString.NSDictionary.NSArray.NSData.NSNumber等可以用属性列表的方法持久化到.plist 文件中,但如果是一些自定义的类的话,属性列表的方法 ...
- 开发者账号续期后,itunes停止付款了
开发者账号过期后,没有及时续期,等再续期后,itunes停止付款到公司银行账户了.过了一个多月了还是没有收到itunes的付款.然后开始联系苹果客服和技术支持,他们都说只能通过itunes的“联系我们 ...
- GDataXMLNode应用
一.GDataXMLNode的安装配置过程 1.将GDataXMLNode文件加入至工程中 2.向Frameworks文件中添加libxml2.dylib库 3.在Croups & Files ...
- IOS 如何隐藏tabbar
系统自带的UITabBarController有时候到不到要求,需要自定义样式. 有一种方法就是在TabBar上面在放一层自己的,正好把原来的遮住. 那么,从Tab进入子的Controller想要隐藏 ...
- iOS 音乐
iOS 音乐 这篇博客介绍的是较长的音频播放-音乐... 有关音效的介绍可以点击下面的连接进入... iOS 音效 首先导入框架:AVFoundation.framework 导入框架后我们在需要使用 ...
- 关于Linux与windows传递文件乱码问题
linux下一般是采用utf-8的编码,而我们在windows上编辑文件时是gb2312的编码.所以导致中文编码会乱码.要更正这个问题实际上很简单只要把文件转换成utf-8编码格式然后再导入就ok啦. ...
- Sublime Text 3 如何修改默认快捷键
修改之前先备份快捷键的配置 问题所在 Sublime Text 3 出来了这么长时间,虽然是 Beta 版,还是决定尝试一波 在安装完之后,就想根据自己的习惯调整快捷键. 结果却发现,在 ST3 中, ...