这篇文章主要介绍了js如何实现tab切换效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
效果如下:
代码如下:
<!DOCTYPE html > <html> <head> <meta charset="utf-8" /> <title>js封装一个tab效果</title> <style type="text/css"> *{margin:0; padding:0;} body { font:12px/1.8 Arial; color:#666;} .wrapper { width:500px; border:1px solid #e6e6e6; margin:0 auto; padding:50px;} /*--=tabPanel--*/ #tab{border:1px solid #ccc;} #tab .tab-bd{border-top:none;margin:0 auto;padding:10px;text-align:left;height:120px;position:relative} .tab-nav{margin:0 auto;padding:0;background:#eee;height:26px;} .tab-nav li{display:inline;list-style:none outside none;width:90px;height:26px;float:left;line-height:26px;text-align:center;} .tab-nav li a{color:#555;display:inline-block} .tab-nav li a:hover,.tab-nav li.hover a{text-decoration:none;background:#fff;color:#000;display:block; } .hidden{display:none} </style> <script type="text/javascript"> function tabPanel(param){ var defaultIndex=param["default"]||0,//设置显示的页面 panelobj=param["panel"],//设置tab容器 defalutClass=param["defalutStyle"]||"",//设置tab菜单项的普通样式 hoverClass=param["hoverStyle"]||"hover",//设置鼠标移到tab菜单项的样式 currentIndex=defaultIndex, menus=_$(panelobj).getElementsByTagName("ul")[0].getElementsByTagName("li"), contents=_$(panelobj).getElementsByTagName("ul")[1].getElementsByTagName("li"), menuNumber=menus.length, hidden="hidden"; for(var i=0;i<menuNumber;i++){ _setClass(contents[0],hoverClass); _setClass(contents[i],hidden); _setClass(menus[i],defalutClass); (function(i){ menus[i].onmouseover=function(){ var old=menus[currentIndex]; _setClass(old,defalutClass); _setClass(contents[currentIndex],hidden); var cur=menus[i]; _setClass(cur,hoverClass); currentIndex=i; _setClass(contents[i],""); }; })(i); } _setClass(menus[currentIndex],hoverClass); _setClass(contents[currentIndex],""); //便利函数 function _setClass(obj,className){obj.className=className} function _$(oid){return typeof(oid) == "string"?document.getElementById(oid):oid} } </script> <body> <div class="wrapper"> <div id="tab"> <!-- tabHead --> <ul class="tab-nav"> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" >交易安全</a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" >淘宝大学</a></li> <li><a href="javascript:void(0)" rel="external nofollow" rel="external nofollow" rel="external nofollow" >爱心</a></li> </ul> <!-- tabPanel--> <ul class="tab-bd"> <li> 1111 </li> <li> 222 </li> <li> 333 </li> </ul> </div> <script type="text/javascript"> tabPanel({"panel":"tab"});//panel为必填项,default、defalutStyle、hoverStyle为选填项 </script> </div> </body> </html>
感谢你能够认真阅读完这篇文章,希望小编分享的“js如何实现tab切换效果”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。