博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
也来一段Mootools的图片切换代码
阅读量:6496 次
发布时间:2019-06-24

本文共 7595 字,大约阅读时间需要 25 分钟。

第一步引入Mootools框架
<
script 
type
="text/javascript"
 src
="http://ajax.googleapis.com/ajax/libs/mootools/1.3.2/mootools-yui-compressed.js"
></
script
>
 

 

先看点入门效果

Demo 1 (图片渐现)

Silverlight
Chrome
Job
Linq
<html> <body> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.3.2/mootools-yui-compressed.js"></script> <style type="text/css"> #slideshow-demo1{ width:130px; height:90px; position:relative; } #slideshow-demo1 img{ display:block; width:130px; height:90px; position:absolute; top:0; left:0; z-index:1; } </style> <div id="slideshow-demo1"> <img alt="Silverlight" src="http://kb.cnblogs.com/zt/silverlight/images/silverlight.gif" /> <img alt="Chrome" src="http://kb.cnblogs.com/zt/chrome/images/chromeosnew.gif" /> <img alt="Job" src="http://kb.cnblogs.com/zt/interview/images/interview.gif" /> <img alt="Linq" src="http://kb.cnblogs.com/zt/linq/images/linq.gif" /> </div> <script type="text/javascript"> /*<![CDATA[*/ window.addEvent('domready',function(){ var container = $('slideshow-demo1'); if(container){ var showDuration = 3500; //间隔时间 var images = container.getElements('img'); var currentIndex = 0; var interval; //隐藏所有图片 images.each(function(img,i){ if(i > 0) { img.set('opacity',0); } }); var show = function() { images[currentIndex].fade('out'); //隐藏当前图片 images[currentIndex = currentIndex < images.length - 1 ? currentIndex+1 : 0].fade('in'); //切换至下一张图片并显示,当前图片为最后一张的时候返回第一张 }; window.addEvent('load',function(){ interval = show.periodical(showDuration); //periodical 定时器,能定期地触发一个函数 }); } }) /*]]>*/ </script> </body> </html>

运行代码

Demo 2.1 (图片向下切换)

Silverlight
Chrome
Job
Linq
<html> <body> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.3.2/mootools-yui-compressed.js"></script> <style type="text/css"> #container1{ width:130px; height:90px; position:relative; overflow:hidden; } #slideshow-demo2{ width:130px; height:90px; position:absolute; } #slideshow-demo2 img{ display:block; width:130px; height:90px; } </style> <div id="container1"> <div id="slideshow-demo2"> <img alt="Silverlight" src="http://kb.cnblogs.com/zt/silverlight/images/silverlight.gif" /> <img alt="Chrome" src="http://kb.cnblogs.com/zt/chrome/images/chromeosnew.gif" /> <img alt="Job" src="http://kb.cnblogs.com/zt/interview/images/interview.gif" /> <img alt="Linq" src="http://kb.cnblogs.com/zt/linq/images/linq.gif" /> </div> </div> <script type="text/javascript"> /*<![CDATA[*/ window.addEvent('domready',function(){ var container = $('slideshow-demo2'); if(container){ var showDuration = 3500; //间隔时间 var images = container.getElements('img'); var currentIndex = 0; var t_height=container.getElement('img').getCoordinates().height; //getCoordinates() 是取得元素的坐标 有:width,height,top,left,right,bottom var interval; var show = function() { currentIndex = currentIndex < images.length - 1 ? currentIndex+1 : 0 container.tween('top',-(currentIndex*t_height)); //tween 将元素top 缓缓移动到 指定的值 }; window.addEvent('load',function(){ interval = show.periodical(showDuration); //periodical 定时器,能定期地触发一个函数 }); } }) /*]]>*/ </script> </body> </html>

运行代码

用到的代码

Demo 2.2 (图片向下切换,来点动态效果)

Silverlight
Chrome
Job
Linq
<html> <body> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.3.2/mootools-yui-compressed.js"></script> <style type="text/css"> #container3{ width:130px; height:90px; position:relative; overflow:hidden; } #slideshow-demo3{ width:130px; height:90px; position:absolute; } #slideshow-demo3 img{ display:block; width:130px; height:90px; } </style> <div id="container3"> <div id="slideshow-demo3"> <img alt="Silverlight" src="http://kb.cnblogs.com/zt/silverlight/images/silverlight.gif" /> <img alt="Chrome" src="http://kb.cnblogs.com/zt/chrome/images/chromeosnew.gif" /> <img alt="Job" src="http://kb.cnblogs.com/zt/interview/images/interview.gif" /> <img alt="Linq" src="http://kb.cnblogs.com/zt/linq/images/linq.gif" /> </div> </div> <script type="text/javascript"> /*<![CDATA[*/ window.addEvent('domready',function(){ var container = $('slideshow-demo3'); if(container){ var showDuration = 3500; //间隔时间 var images = container.getElements('img'); var currentIndex = 0; var interval; var t_height=container.getElement('img').getCoordinates().height; //getCoordinates() 是取得元素的坐标 有:width,height,top,left,right,bottom container.set('tween',{duration: 'long', transition: 'bounce:out'}); //设置元素 tween 的动态类型,out(完以后抖动一下),in(开始抖动一下), var show = function() { currentIndex = currentIndex < images.length - 1 ? currentIndex+1 : 0 container.tween('top',-(currentIndex*t_height)); //tween 将元素top 缓缓移动到 指定的值 }; window.addEvent('load',function(){ interval = show.periodical(showDuration); //periodical 定时器,能定期地触发一个函数 }); } }) /*]]>*/ </script> </body> </html>

运行代码

补充的代码

Demo 2.3 (图片向下切换,来点动态效果,带数字的切换)

Silverlight
Chrome
Job
Linq
<html> <body> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.3.2/mootools-yui-compressed.js"></script> <style type="text/css"> #container4{ width:130px; height:90px; position:relative; overflow:hidden; } #slideshow-demo4{ width:130px; height:90px; position:absolute; } #slideshow-demo4 img{ display:block; width:130px; height:90px; } #list_number{ position:absolute; bottom:5px; right:0; text-align:right; } #list_number a{ display:inline-block; text-align:center; width:15px; height:15px; font: normal 15px/15px Arial, Helvetica, sans-serif ; color:#FFF; margin:0 3px; background-color:#666; } #list_number a.current, #list_number a:hover{ background-color:#900; text-decoration:none; } </style> <div id="container4"> <div id="slideshow-demo4"> <img alt="Silverlight" src="http://kb.cnblogs.com/zt/silverlight/images/silverlight.gif" /> <img alt="Chrome" src="http://kb.cnblogs.com/zt/chrome/images/chromeosnew.gif" /> <img alt="Job" src="http://kb.cnblogs.com/zt/interview/images/interview.gif" /> <img alt="Linq" src="http://kb.cnblogs.com/zt/linq/images/linq.gif" /> </div> </div> <script type="text/javascript"> /*<![CDATA[*/ window.addEvent('domready',function(){ var container = $('slideshow-demo4'); if(container){ var showDuration = 3500; //间隔时间 var images = container.getElements('img'); var currentIndex = 0; var interval; var t_height=container.getElement('img').getCoordinates().height; //getCoordinates() 是取得元素的坐标 有:width,height,top,left,right,bottom container.set('tween',{duration: 'long', transition:'bounce:out'}); //设置元素 tween 的动态类型,out(完以后抖动一下),in(开始抖动一下), var list_number= new Element('div', {"id": 'list_number'}); images.each(function(img,i){ if(i > 0) { //按照图片数量生成 A元素 t_a= new Element('a', { href: 'javascript:void(0)', html:i, events: { 'mouseover': function(){ currentIndex=i-1; select_hover(); } } }); list_number.adopt(t_a); //adopt() 将A元素添加到 list_number 中 } }); var list_a=list_number.getElements('a'); if(list_a.length>0){ list_number.inject($('container4'),'bottom'); //inject() 将元素list_number 插入到 container4元素的后面(container4 包含了 list_number) list_a[0].addClass('current'); //addClass() 设定第一个A连接的样式为选中的样式 } var select_hover=function(){ currentIndex = currentIndex < images.length - 1 ? currentIndex:0; list_a.removeClass('current'); //移除list_a 列表中A元素的的class list_a[currentIndex].addClass('current'); container.tween('top',-(currentIndex*t_height)); } var show = function() { currentIndex = currentIndex+1; select_hover(); }; window.addEvent('load',function(){ interval = show.periodical(showDuration); //periodical 定时器,能定期地触发一个函数 }); } }) /*]]>*/ </script> </body> </html>

运行代码

补充的代码

瞎捣许久,还是没能实现在当前页面执行Mootools函数,和园子的JQ冲突了,尝试了几次,最后想到大哥用到的一个函数直接弹出新窗口运行JS的方法,这里直接引用了

<
script 
type
="text/javascript"
 src
="http://files.cnblogs.com/rubylouvre/myjs2.js"
></
script
>
 

 

转载于:https://www.cnblogs.com/qq419524837/archive/2011/08/30/Mootools.html

你可能感兴趣的文章
Minix
查看>>
CentOS 6.5 下Vim 配置图解
查看>>
查看CentOS的网络带宽出口
查看>>
MD5与Base64的思考
查看>>
如何独立开发一个网络请求框架
查看>>
HTMLDOM中三种元素节点、属性节点、文本节点的测试案例
查看>>
js构造函数式编程
查看>>
css构造文本
查看>>
hibernate用注解(annotation)配置sequence
查看>>
仿桌面通知pnotify插件
查看>>
how tomcat works 总结 二
查看>>
Remove Duplicates from Sorted Array II -- LeetCode
查看>>
active mq 配置
查看>>
C# Window编程随记——ClickOnce程序部署
查看>>
数学希腊字母表
查看>>
Intellij IDEA 将工程转换成maven工程 详解
查看>>
JAVA对图片的任意角度旋转,以及镜像操作
查看>>
vue - check-versions.js for child_process
查看>>
EMQ学习笔记---Clean Session和Retained Message
查看>>
Ubuntu 上创建常用磁盘阵列
查看>>