全面解析标签页的切换方式
更新时间:2016年08月21日 09:10:23 作者:乖乖脸很大
这篇文章主要介绍了标签页的切换方式,介绍的非常不错,具有参考借鉴价值,需要的朋友可以参考下
标签页的切换方式如下所示:
1、控制tab的显示与隐藏
2、tab不切换,数据加载
控制tab的显示与隐藏
前端脚本:
1、jquery实现:
$(function(){ $(".sdkj-tabs li").click(function() { $(this).addClass("on").siblings().removeClass("on"); var index=$(".sdkj-tabs li").index(this); $(".cont-tabs>div").eq(index).show().siblings().hide(); }); });
引入jquery文件,代码简洁
jquery文件较大,浏览器不兼容
2、js 实现
function selectTab(showContent,selfObj){ var tab = document.getElementById("sdkj-tabs").getElementsByTagName("li"); var tablength = tab.length; for(i=0; i<tablength; i++){ tab[i].className = ""; } selfObj.className = "on"; // 标签页切换 for(i=0; j=document.getElementById("cont-tab"+i); i++){ j.style.display = "none"; } document.getElementById(showContent).style.display = "block"; }
无需引入jquery文件
代码量大,需每个标签添加函数及ID
3、插件实现
var tabs=function(){ function tag(name,elem){ return (elem||document).getElementsByTagName(name); } //获得相应ID的元素 function id(name){ return document.getElementById(name); } function first(elem){ elem=elem.firstChild; return elem&&elem.nodeType==1? elem:next(elem); } function next(elem){ elem=elem.nextSibling; while(elem){ if(elem.nodeType==1){ return elem; } else{ elem=elem.nextSibling; } } } function child(elem){ var arrays = new Array(); var array_int=0; var elem_child=first(elem); for(array_int=0;elem_child;array_int++){ //console.log("elem:"+elem); arrays[array_int]=elem_child; elem_child=next(elem_child); } return arrays; } return { set:function(elemId,tabId){ var elem=tag("li",id(elemId)); var tabs=child(id(tabId)); var listNum=elem.length; var tabNum=tabs.length; console.log(tabs); for(var i=0;i<listNum;i++){ elem[i].onclick=(function(i){ return function(){ for(var j=0;j<3;j++){ if(i==j){ tabs[j].style.display="block"; elem[j].className="on"; } else{ tabs[j].style.display="none"; elem[j].className=" "; } } } })(i) } } } }(); tabs.set("sdkj-tabs","cont-tabs");//执行
无需引入jquery文件,只需添加父元素ID
以上所述是小编给大家介绍的全面解析标签页的切换方式的全部叙述,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关文章
DOM事件阶段以及事件捕获与事件冒泡先后执行顺序(图文详解)
DOM事件标准定义了两种事件流,这两种事件流有着显著的不同并且可能对你的应用有着相当大的影响。这两种事件流分别是捕获和冒泡。和许多Web技术一样,在它们成为标准之前,Netscape和微软各自不同地实现了它们,下面介绍DOM事件阶段以及事件捕获与事件冒泡先后执行顺序2015-08-08Jquery跨域获得Json时invalid label错误的解决办法
这两天用 Jquery 跨域取数据的时候,经常碰到 invalid label 这个错误,十分的郁闷,老是取不到服务器端发送回来的 json 值,一般跨域用到的两个方法为:$.ajax 和 $.getJson2011-01-01jQuery Validate表单验证插件 添加class属性形式的校验
这篇文章主要介绍了jQuery Validate表单验证插件,在class属性中添加校验规则进行简单的校验,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2016-01-01
最新评论