用jquery实现图片的切换和随机显示.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用jquery实现图片的切换和随机显示

用jquery实现图片的切换与随机显示 本例所要实现的效果如下: 1单击按钮,能够切换图片 切换之前,如图1所示: 图1 切换之后,如图2所示: 图2 2图片每次切换后,位置是随机变化的 切换之前,如图3所示: 图3 切换之后,如图4所示: 图4 3第一次所有图片加载时,效果是淡入的,加载完之后的所有切换淡入效果消失。(由于此效果难截图,所以不能显示) 4鼠标移上去,图片变大,下边显示有关于图片的描述信息 如图5所示: 图5 下边有关此效果的具体实现步骤。 前提将html,css样式,所需图片,准备好,源文件放在源文件文件夹下边。为操作方便,布局采用的是table+div。本例图片分两组,一组显示12张图片。 ① 单击按钮,切换图片 打开浏览器时,图片并未直接加载在页面中,而是通过调用js代码将第一组图片一张张加载进去。关键代码如下 $(document).ready(function(){ for(var i=0;i=11;i++){ $(#i+i).attr(src,imgs/0+i+.jpg).hide().fadeIn(2000); //通过图片id获取图片路径 } }) 补充:为方便加载图片,图片的命名规则是00,01,02….011 10,11,12…111;这样做的好处是通过图片名字的第一位数判断图片所属的组数,由于浏览器是第一次加载图片,显示的是第一组,所以上述代码图片的第一位直接是0. 当单击按钮时,会触发randomImage()事件,即切换图片。关键代码如下: function randomImage(){ count++; //用来记录单击按钮的次数,设为全局变量,初始值为0 count=count%2; //遍历完一遍图片后,将count置为0,可以循环切换图片,并且能够通过count识别应该加载第几组图片,本例用的是两组图片,如果是多组图片,此方法照样可以用。 for(var i=0;i=11;i++){ $(#i+i).hide().attr(src,imgs/+count+i+.jpg).fadeIn(2000); } } ②图片每次变化后,位置是随机的 位置随机,即每次显示的图片跟前一次显示位置不同,即打乱图片显示顺序。由于图片实现是通 for(var i=0;i=11;i++)循环依次加载,而图片的路径跟i相关。所以只要将i的顺序打乱即可。通过函数randomImage()即可打乱次序,关键代码如下: function random(){ var temp1; var temp2; var temp3; var b=new Array(0,1,2,3,4,5,6,7,8,9,10,11); //将固定的数组中的元素通过轮番交换位置将其打乱 for(var i=0;ib.length;i++){ temp1=parseInt(Math.random()*12);//通过随机函数确定数组索引值 temp2=parseInt(Math.random()*12); if(temp1!=temp2){ temp3=b[temp1]; b[temp1]=b[temp2]; b[temp2]=temp3; } } return b; } 通过此函数即可将顺序打乱,返回值是个数组,所以上述显示图片的代码可改为 function randomImage(){ count++; count=count%2; var a=new Array(); a=random(); for(var i=0;i=11;i++){ $(#i+i).hide().attr(src,imgs/+count+a[i]+.jpg).fadeIn(2000); } } 通过此函数即可将图片位置打乱。 ③第一次所有图片加载时,效果是淡入的,加载完之后的所有切换淡入效果消失 本例图片是直接放在本地文件夹中,所以不需下载,若与服务器连接,那么需下载图片,这过程需花费时间,所以第一次实现的时候需要等待,为模仿这效果,用淡入效果代替,完全下载完之后,即直接显示,淡入效果消失。为此,引入一个变量roundCount(为全局变量,初始值为0)用来记录所有图片是否是第一次显示。具体代码如下。 function randomImage(){ count++; count=count%2; var a=new Array(); a=random(); if(count==0){ roundCount++; //通过此判段语句,即可确定所有图片是否是第一次显示。 } f

文档评论(0)

ktj823 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档