全面解析标签页的切换方式


Posted in Javascript onAugust 21, 2016

标签页的切换方式如下所示:

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

以上所述是小编给大家介绍的全面解析标签页的切换方式的全部叙述,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript 入门基础知识 想学习js的朋友可以参考下
Dec 26 Javascript
js 键盘记录实现(兼容FireFox和IE)
Feb 07 Javascript
jQuery控制图片的hover效果(smartRollover.js)
Mar 18 Javascript
JavaScript中实现依赖注入的思路分享
Jan 15 Javascript
javascript每日必学之循环
Feb 19 Javascript
JavaScript中的时间处理小结
Feb 24 Javascript
JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
Jun 30 Javascript
node使用UEditor富文本编辑器的方法实例
Jul 11 Javascript
jQuery Validate格式验证功能实例代码(包括重名验证)
Jul 18 jQuery
从零开始最小实现react服务器渲染详解
Jan 26 Javascript
vue源码入口文件分析(推荐)
Jan 30 Javascript
jQuery与原生JavaScript选择HTML元素集合用法对比分析
Nov 26 jQuery
JavaScript第一篇之实现按钮全选、功能
Aug 21 #Javascript
JS实现图片局部放大或缩小的方法
Aug 20 #Javascript
JS获取及验证开始结束日期的方法
Aug 20 #Javascript
jquery弹出框插件jquery.ui.dialog用法分析
Aug 20 #Javascript
jQuery实现表格隔行及滑动,点击时变色的方法【测试可用】
Aug 20 #Javascript
JS关闭窗口时产生的事件及用法示例
Aug 20 #Javascript
JS实现漂亮的时间选择框效果
Aug 20 #Javascript
You might like
PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题
2011/05/29 PHP
php版微信公众平台入门教程之开发者认证的方法
2016/09/26 PHP
PHP多进程之pcntl_fork的实例详解
2017/10/15 PHP
jQuery html() in Firefox (uses .innerHTML) ignores DOM changes
2010/03/05 Javascript
浏览器解析js生成的html出现样式问题的解决方法
2012/04/16 Javascript
javascript作用域容易记错的两个地方分析
2012/06/22 Javascript
JavaScript实现的内存数据库LokiJS介绍和入门实例
2014/11/17 Javascript
JS实现仿腾讯微博无刷新删除微博效果代码
2015/10/16 Javascript
深入探究AngularJs之$scope对象(作用域)
2017/07/20 Javascript
vuejs使用FormData实现ajax上传图片文件
2017/08/08 Javascript
vue项目部署到Apache服务器中遇到的问题解决
2018/08/24 Javascript
NodeJS 文件夹拷贝以及删除功能
2019/09/03 NodeJs
three.js 如何制作魔方
2020/07/31 Javascript
[35:27]完美世界DOTA2联赛循环赛 GXR vs FTD BO2第二场 10.29
2020/10/29 DOTA
python用10行代码实现对黄色图片的检测功能
2015/08/10 Python
使用简单工厂模式来进行Python的设计模式编程
2016/03/01 Python
python3学习之Splash的安装与实例教程
2018/07/09 Python
Python编程图形库之Pillow使用方法讲解
2018/12/28 Python
PyQt5 QTableView设置某一列不可编辑的方法
2019/06/25 Python
Python 使用 PyMysql、DBUtils 创建连接池提升性能
2019/08/14 Python
python zip()函数使用方法解析
2019/10/31 Python
基于python实现百度语音识别和图灵对话
2020/11/02 Python
利用HTML5的新特点实现图片文件异步上传
2014/05/29 HTML / CSS
雅诗兰黛美国官网:Estee Lauder美国
2016/07/21 全球购物
如何在.net Winform里面显示PDF文档
2012/09/11 面试题
财务经理的岗位职责
2013/12/17 职场文书
高中军训感言1000字
2014/03/01 职场文书
销售经理岗位职责
2014/03/16 职场文书
毕业设计说明书
2014/05/07 职场文书
乡党委干部党的群众路线教育实践活动个人对照检查材料思想汇报
2014/10/01 职场文书
机关班子查摆问题及整改措施
2014/10/28 职场文书
敬老院志愿者活动总结
2015/05/06 职场文书
小学六年级班主任工作经验交流材料
2015/11/02 职场文书
学者《孟子》名人名言
2019/08/09 职场文书
MySQL读取JSON转换的方式
2022/03/18 MySQL
详解Golang如何优雅的终止一个服务
2022/03/21 Golang