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


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 相关文章推荐
用jscript启动sqlserver
Jun 21 Javascript
js压缩工具 yuicompressor 使用教程
Mar 31 Javascript
利用JQuery和JS实现奇偶行背景颜色自定义效果
Nov 19 Javascript
Yii-自定义删除确认弹框(zyd)jquery实现代码
Mar 04 Javascript
javascript数字时钟示例分享
Apr 23 Javascript
Node.js中npm常用命令大全
Jun 09 Javascript
js的各种排序算法实现(总结)
Jul 23 Javascript
AngularJS入门教程之过滤器详解
Aug 19 Javascript
JS数组排序方法实例分析
Dec 16 Javascript
js实现可以点击收缩或张开的悬浮窗
Sep 18 Javascript
Vue2.0用户权限控制解决方案的示例
Feb 10 Javascript
记一次vue-webpack项目优化实践详解
Feb 17 Javascript
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
通过ODBC连接的SQL SERVER实例
2006/10/09 PHP
php中apc缓存使用示例
2013/12/25 PHP
php版小黄鸡simsimi聊天机器人接口分享
2014/01/26 PHP
几道坑人的PHP面试题 试试看看你会不会也中招
2014/08/19 PHP
深入浅析PHP无限极分类的案例教程
2016/05/09 PHP
PHP5.5安装PHPRedis扩展及连接测试方法
2017/01/22 PHP
yii2实现Ueditor百度编辑器的示例代码
2018/11/02 PHP
解决laravel session失效的问题
2019/10/14 PHP
jQuery表单获取和失去焦点输入框提示效果的实例代码
2013/08/01 Javascript
时间戳转换为时间 年月日时间的JS函数
2013/08/19 Javascript
20条学习javascript的编程规范的建议
2014/11/28 Javascript
jquery实现焦点图片随机切换效果的方法
2015/03/12 Javascript
微信小程序tabbar不显示解决办法
2017/06/08 Javascript
一个有意思的鼠标点击文字特效jquery代码
2017/09/23 jQuery
Vue组件系列开发之模态框
2019/04/18 Javascript
vue列表单项展开收缩功能之this.$refs的详解
2019/05/05 Javascript
判断JavaScript中的两个变量是否相等的操作符
2019/12/21 Javascript
解决node终端下运行js文件不支持ES6语法
2020/04/04 Javascript
Python使用ntplib库同步校准当地时间的方法
2016/07/02 Python
python爬虫获取京东手机图片的图文教程
2017/12/29 Python
创建pycharm的自定义python模板方法
2018/05/23 Python
Python实现将HTML转成PDF的方法分析
2019/05/04 Python
了解不常见但是实用的Python技巧
2019/05/23 Python
Pycharm内置终端及远程SSH工具的使用教程图文详解
2020/03/19 Python
手把手教你配置JupyterLab 环境的实现
2021/02/02 Python
HTML 5 标签、属性、事件及浏览器兼容性速查表 附打包下载
2012/10/20 HTML / CSS
PREMIUM-MALL法国:行李、箱包及配件在线
2019/05/30 全球购物
实体的生命周期
2013/08/31 面试题
应届毕业生就业自荐信
2013/10/26 职场文书
家长评语大全
2014/01/22 职场文书
设计师求职信模板
2014/05/06 职场文书
停车位租赁协议书
2014/09/24 职场文书
2015年女生节活动总结
2015/02/27 职场文书
敬老院义诊活动总结
2015/05/07 职场文书
用人单位聘用意向书
2015/05/11 职场文书
python实现学员管理系统(面向对象版)
2022/06/05 Python