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


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学习笔记(二)数组和对象部分
Sep 30 Javascript
使用pjax实现无刷新更改页面url
Feb 05 Javascript
jQuery实现仿淘宝带有指示条的图片转动切换效果完整实例
Mar 04 Javascript
详解jQuery同步Ajax带来的UI线程阻塞问题及解决办法
Aug 09 jQuery
vue组件初学_弹射小球(实例讲解)
Sep 06 Javascript
详解Vue 多级组件透传新方法provide/inject
May 09 Javascript
浅析Vue 和微信小程序的区别、比较
Aug 03 Javascript
Vue源码解读之Component组件注册的实现
Aug 24 Javascript
Nuxt使用Vuex的方法示例
Sep 06 Javascript
Vue学习笔记之计算属性与侦听器用法
Dec 07 Javascript
JS前后端实现身份证号验证代码解析
Jul 23 Javascript
vue组件vue-esign实现电子签名
Apr 21 Vue.js
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
基于数据库的在线人数,日访问量等统计
2006/10/09 PHP
php 缓存函数代码
2008/08/27 PHP
检测codeigniter脚本消耗内存情况的方法
2015/03/21 PHP
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
2016/12/07 PHP
详解PHP安装mysql.so扩展的方法
2016/12/31 PHP
Yii2.0 RESTful API 基础配置教程详解
2018/12/26 PHP
jquery 表单进行客户端验证demo
2009/08/24 Javascript
把input初始值不写value的具体实现方法
2013/07/04 Javascript
JS延迟加载加快页面打开速度示例代码
2013/12/30 Javascript
深究AngularJS中$sce的使用
2017/06/12 Javascript
Vue网页html转换PDF(最低兼容ie10)的思路详解
2017/08/24 Javascript
详解Vue 中 extend 、component 、mixins 、extends 的区别
2017/12/20 Javascript
Angular实现模版驱动表单的自定义校验功能(密码确认为例)
2018/05/17 Javascript
微信小程序-API接口安全详解
2019/07/16 Javascript
利用JavaScript的Map提升性能的方法详解
2019/08/14 Javascript
使用pkg打包ThinkJS项目的方法步骤
2019/12/30 Javascript
原生JS实现贪吃蛇小游戏
2020/03/09 Javascript
基于JS实现视频上传显示进度条
2020/05/12 Javascript
vue实践---vue不依赖外部资源实现简单多语操作
2020/09/21 Javascript
编写v-for循环的技巧汇总
2020/12/01 Javascript
Python中if __name__ == &quot;__main__&quot;详细解释
2014/10/21 Python
Python检测网站链接是否已存在
2016/04/07 Python
python制作填词游戏步骤详解
2019/05/05 Python
django与vue的完美结合_实现前后端的分离开发之后在整合的方法
2019/08/12 Python
使用OpenCV实现仿射变换—平移功能
2019/08/29 Python
TensorFlow设置日志级别的几种方式小结
2020/02/04 Python
Python中Selenium库使用教程详解
2020/07/23 Python
总结html5自定义属性有哪些
2020/04/01 HTML / CSS
Kenneth Cole官网:纽约时尚优雅品牌
2016/11/14 全球购物
澳大利亚快时尚鞋类市场:Billini
2018/05/20 全球购物
销售顾问岗位职责
2014/02/25 职场文书
五一促销活动总结
2014/07/01 职场文书
商场消防安全责任书
2014/07/29 职场文书
教师党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
工人先进事迹材料
2014/12/26 职场文书
Python3中PyQt5简单实现文件打开及保存
2021/06/10 Python