本文实例讲述了JS实现slide文字框缩放伸展效果代码。分享给大家供大家参考,具体如下:
这里介绍的slide文字框缩放伸展效果,自己闲来无事写的,不是太好,可能在兼容性方面还需努力,展开速度方面,IE8和火狐的展开速度不一样,火狐下更快一些,至今没找到原因,也请JS高人指点江山。
运行效果截图如下:
在线演示地址如下:
http://demo.jb51.net/js/2015/js-slide-txt-dlg-show-codes/
具体代码如下:
<!DOCTYPE html> <html> <head> <meta http-equiv="content" content="text/html charset=gb2312"> <title>slide文字框缩放伸展效果</title> <style type="text/css"> *{margin:0; padding:0;} ul{list-style:none;} .box{width:300px; margin:10px; border:1px solid #ccc; overflow:hidden; position:relative; font-size:12px;} .oHx{height:30px; background:#eee; line-height:30px; font-size:14px; text-indent:14px; cursor:pointer;} .fold{position:absolute; top:9px; right:12px;} .box_content{line-height:18px; overflow:hidden; display:none;} </style> <script type="text/javascript"> function getElementsByClassName(className,id,tag){ tag = tag || "*"; if(id){ var id = typeof id == "string" ? $(id) : id; }else{ var id = document.body; } var els = id.getElementsByTagName(tag),arr = []; for(var i=0,n=els.length;i<n;i++){ for(var j=0,k=els[i].className.split(" "),l=k.length;j<l;j++){ if(k[j]==className){ arr.push(els[i]); break; } } } return arr; }; function Slide(slideClass,slideBtn,slideCon,slideSpeed) { this.oSlides = getElementsByClassName(slideClass); this.oTimer = null; this.slideBtn = slideBtn; this.slideCon = slideCon; this.slideSpeed = slideSpeed; } Slide.prototype = { oTimer:null, _init:function (){ this._slideEvent(); }, _slideEvent:function (){ var This = this; for(var i = 0,n=This.oSlides.length;i<n;i++){ (function(n){ var oSlide = This.oSlides[n]; var oSlideBtn = getElementsByClassName(This.slideBtn,oSlide)[0]; var oSlideCon = getElementsByClassName(This.slideCon,oSlide)[0]; oSlideBtn.onclick = function (){ if(oSlideCon.style.display == "block" && This.oTimer == null){ This._slideClose(oSlideCon); }else if(!(oSlideCon.style.display == "block" ) && This.oTimer == null){ This._slideOpen(oSlideCon); } } })(i) } }, _slideOpen:function (slideCon){ var This = this; slideCon.style.display = "block"; slideCon.style.height = "auto"; var slideHeight = slideCon.offsetHeight; slideCon.style.height = 0 + "px"; This.oTimer = setInterval(function (){ if(slideCon.offsetHeight < slideHeight){ slideCon.style.height = slideCon.offsetHeight + 2 + "px"; }else{ clearInterval(This.oTimer); This.oTimer = null; } },This.slideSpeed); }, _slideClose:function (slideCon){ var This = this; This.oTimer = setInterval(function (){ if(slideCon.offsetHeight <= 0){ clearInterval(This.oTimer); slideCon.style.display = "none"; This.oTimer = null; }else{ slideCon.style.height =slideCon.offsetHeight - 2 + "px"; } },This.slideSpeed); } } </script> </head> <body> <div class="box"> <div class="oHx slide">收缩2</div> <div class="box_content"> <ul class="uft" style="padding:10px;"> <li><a href="#" target="_blank">scscms V1.0 阳光企业网站系统</a></li> <li><a href="#" target="_blank">24点,VC++游戏源码</a></li> <li><a href="#" target="_blank">可记录图像的C#数据库记录单程序</a></li> <li><a href="#" target="_blank">jQuery 1.4 参考指南的实例源代码</a></li> </ul> </div> </div> <div class="box"> <div class="oHx slide">收缩3</div> <div class="box_content"> <ul class="uft"style="padding:10px;"> <li><a href="#" target="_blank">scscms V1.0 阳光企业网站系统</a></li> <li><a href="#" target="_blank">24点,VC++游戏源码</a></li> <li><a href="#" target="_blank">可记录图像的C#数据库记录单程序</a></li> <li><a href="#" target="_blank">jQuery 1.4 参考指南的实例源代码</a></li> </ul> </div> </div> <script type="text/javascript"> var mySlide = new Slide("box","slide","box_content",10); mySlide._slideEvent(); </script> </body> </html>
希望本文所述对大家JavaScript程序设计有所帮助。
本文向大家介绍android使用Textview实现伸缩效果,包括了android使用Textview实现伸缩效果的使用技巧和注意事项,需要的朋友参考一下 android开发过程中,经常遇到Textview展示不完全的情况。 遇到此情况,通常的处理是: 方案一、Textview添加android:ellipsize属性,让展示不完的部分使用省略号代替。 方案二、Textview采用走马灯效果,使其
本文向大家介绍JS实现文字放大效果的方法,包括了JS实现文字放大效果的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS实现文字放大效果的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的javascript程序设计有所帮助。
本文向大家介绍JS实现密码框效果,包括了JS实现密码框效果的使用技巧和注意事项,需要的朋友参考一下 在输入密码时,将密码的长度设置为6-16,且在密码长度出现小于6或是大于16时,会出现提示,效果如下图 1. 此事件为失去焦点事件,当鼠标离开密码框且点击旁边就会触发事件 2. 输入密码会出现提示,事件发生与密码的长度有关 3. 根据长度再来判断该提示的消息与效果. 代码如下: 以上就是本文的
本文向大家介绍jQuery实现的经典竖向伸缩菜单效果代码,包括了jQuery实现的经典竖向伸缩菜单效果代码的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jQuery实现的经典竖向伸缩菜单效果代码。分享给大家供大家参考。具体如下: 这是一款使用jquery1.3.2制作的竖向伸缩菜单,每点击一次主菜单,会拉开出对应的二级菜单,再次点击会合拢,效果非常不错。 运行效果截图如下: 在线演示地址
本文向大家介绍JS实现放烟花效果,包括了JS实现放烟花效果的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了JS实现放烟花效果的具体代码,供大家参考,具体内容如下 move.js 更多JavaScript精彩特效分享给大家: Javascript菜单特效大全 javascript仿QQ特效汇总 JavaScript时钟特效汇总 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大
本文向大家介绍原生js实现拖拽移动与缩放效果,包括了原生js实现拖拽移动与缩放效果的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了js实现拖拽移动与缩放效果的具体代码,供大家参考,具体内容如下 效果图如下-实现了简单的拖拽和缩放功能 第一步—简单的拖拽功能 效果如下,简单的拖拽 第二步—简单的缩放功能 1.设置方位 2.给原型绑定缩放的方法 效果图如下 最终效果,盒子可以拖动,可以缩