广

JavaScript

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    javascript基于面向对象实现网页TAB选项卡菜单效果代码

    2018-04-08 09:03:04 次阅读 稿源:互联网
    零七广告

    本文实例讲述了js基于面向对象实现网页TAB选项卡菜单效果代码。分享给大家供大家参考。具体如下:

    这是一款自动的网页TAB,基于面向对象的选项卡菜单,由于时间关系只做了简单的实现,界面没有美化,不多做介绍了。

    先来看看运行效果截图:

    在线演示地址如下:

    http://demo.jb51.net/js/2015/js-mxdx-tab-cha-style-codes/

    具体代码如下:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>选项卡</title><style type="text/css">body, h2, p { margin:0px; padding:0px;}ul, li { margin:0px; padding:0px; float:left; list-style-type:none;}body { font-size:12px;}.box { width:722px; height:99px; margin:10px auto; border:1px solid #dedede;}.list { width:711px; height:22px; float:left; padding:4px 0 0 9px; border-top:1px solid #fff; border-left:1px solid #fff; border-right:1px solid #fff; background:url(images/tabbg.jpg) repeat-x;}.list li { width:74px; height:22px; float:left; cursor:pointer; color:#656565; line-height:22px; text-align:center;}.list li.hove { width:72px; height:20px; color:#fc6703; line-height:20px; border-top:1px solid #dedede; border-left:1px solid #dedede; border-right:1px solid #dedede; border-bottom:1px solid #fff; background:#fff;}.content { width:722px; height:72px; float:left; display:none;}</style><script type="text/javascript">function $(id){ return typeof id === "string" ? document.getElementById(id) : id;}function $$(oParent, elem){ return (oParent || document).getElementsByTagName(elem);}function $$$(oParent, sClass){ var aElem = $$(oParent, '*'); var aClass = []; var i = 0; for(i=0;i<aElem.length;i++)if(aElem[i].className == sClass)aClass.push(aElem[i]); return aClass;}function addEvent(oElm, strEvent, fuc) { window.addEventListener ? oElm.addEventListener(strEvent, fuc, false) : oElm.attachEvent('on' + strEvent, fuc);};function Tab(){ this.initialize.apply(this, arguments);}Object.extend = function(destination, source) { for (var property in source) { destination[property] = source[property]; } return destination;};Tab.prototype = { initialize : function(obj, dis, content, onEnd, eq){  this.obj = $(obj);  this.oList = $$$(this.obj, 'list')[0];  this.aCont = $$$(this.obj, content);  this.oUl = $$(this.oList, 'ul')[0];  this.aLi = this.oUl.children;  this.timer = null;  eq ? (this.aLi.length < eq ? eq = 0 : eq) : eq = 0;  this.oEve(onEnd);  this.onEnd.method == 'mouseover' ? this.method = "mouseover" : this.method = "click";  this.onEnd.autoplay == 'stop' ? this.autoplay = "stop" : this.autoplay = "play";  this.aCont[eq].style.display = 'block';  this.aLi[eq].className = 'hove';  this.display(dis);  this.autoPlayTab(eq, dis); }, oEve: function(onEnd){ this.onEnd = {  method: 'mouseover',   autoplay: 'stop', }; Object.extend(this.onEnd, onEnd || {}); }, display : function(dis){  var _this = this;  var i = iNow = 0;  for(i=0;i<this.aLi.length;i++){   (function(){    var j = i;    addEvent(_this.aLi[j], _this.method,    function() {     _this.fnClick(j,dis);     _this.autoPlayTab(j, dis);    })    })()  } }, autoPlayTab : function(iNow, dis){  if(this.autoplay == 'play'){   var _this = this;   this.iNow = iNow;   this.obj.onmouseover = function(){    clearInterval(_this.timer);   };   this.obj.onmouseout = function(){    clearInterval(_this.timer);    _this.timer = setInterval(playTab,5000);   };   clearInterval(_this.timer);   _this.timer = setInterval(playTab,5000);   function playTab(){    if(_this.iNow == _this.aLi.length)_this.iNow = 0;    _this.fnClick(_this.iNow, dis)    _this.iNow++   }  } }, fnClick : function(oBtn, dis){  var i = 0;  for(i=0;i<this.aLi.length;i++)this.aLi[i].className = '',this.aCont[i].style.display = 'none';  this.aLi[oBtn].className = dis;  this.aCont[oBtn].style.display = 'block'; }};window.onload = function(){ new Tab("box", 'hove', 'content', { method : 'mouseover',  autoplay : 'play' },0); new Tab("box1", 'hove', 'content', { method : 'click', },0);};</script></head><body><div id="box" class="box"> <div class="list">  <ul>  <li>团购导航</li>  <li>商城导航</li>  <li>淘宝导航</li> </ul> </div> <div class="content">111</div> <div class="content">222</div> <div class="content">333</div></div><div id="box1" class="box"> <div class="list">  <ul>  <li>团购导航</li>  <li>商城导航</li>  <li>淘宝导航</li> </ul> </div> <div class="content">111</div> <div class="content">222</div> <div class="content">333</div></div></body></html>

    希望本文所述对大家的JavaScript程序设计有所帮助。

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告