| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> JavaScript用面向对象的方法实现tab栏的切换 -> 正文阅读 |
|
[JavaScript知识库]JavaScript用面向对象的方法实现tab栏的切换 |
hello,友友们,今天鱼小包同学主要实现的功能是tab栏的切换,相信有一定基础的友友一定知道面向对象这个思想,那么今天就让我们一起去探索用这个思想实现tab栏的切换吧!let's go! tab栏切换的主要功能:
以上就是想要实现的功能啦,有些友友看了之后是不是有些熟悉呢,哈哈,不要开心的太早,一些些小小的bug隐藏在其中,冲鸭! 首先展示一下html代码,一些基本的结构: ? ?部分css样式在这里就不加以展示啦,相信友友们都会写呢,初学者想要学习的话欢迎私聊鱼小包同学哦~ 以下将是本文的重点,友友们要认真看哦。想要用面向对象的思想实现这项功能,首先我们需要新建一个类,把公共的属性和方法抽取出来写进去,然后根据我们的类去实例化对象,再对应去创建一个个对象就可以了。 抽取对象:Tab对象 该对象功能:
现在我们既抽取出了一个大对象Tab,又分析了它的具体功能,那接下来我们一起去给这个对象创建一个类并把这些功能写进去吧:
这样我们js文件中的Tab类的大概框架就写出来啦,接下来我们具体来实现一下这四大功能:
在全局中定义that变量是为之后方法中便于使用,这里是一个小bug哦,友友们一定要注意了。比如在切换功能toggleTab方法中,this所指向的是某一个小li,但在方法里想要访问Tab对象,那么就用到我们的变量that啦。 按理来说,我们获取元素可以直接写在constructor方法里,那为什么在这里我们要重新再写了一个updateNode方法呢,其原因是因为在constructor方法里面的内容程序一开始后就会执行,但之后我们会动态生成小li和一些其他的元素,如果不把小li分离出来,那么动态生成后获取到的小li是不完整的,就会造成报错现象,友友们懂了么,一定要注意这里的小bug哦! 这里想要提醒的只有一点,友友们发现了么,对滴,就是this.toggleTab 后面不能加小括号。 ? ?在toggleTab方法里面主要运用排他思想实现tab栏的高亮和相应内容的切换。
友友们,之后的功能就不全部展示了哦,主要展示一下各种功能方法里面是怎么实现的,其他的一些些步骤都是一样滴——先获取元素,再给元素添加onclick事件就可以啦。 相信有细心的友友已经发现这个方法的最后一行有个that.init()语句,这个语句千万不要忘掉写哦,不写的话也会出现小bug。
?删除功能需要考虑到用户的使用性是否良好:点击删除后高亮的小li应该属于谁?分为两种情况,一种是高亮的删除后前一个小li亮,另一种是删掉不高亮的那么高亮的应该还属于原来的小li,代码中以及分层去分析了,友友们下去一定要试试哦。
?实现修改功能的主要原理是:双击(ondblclick)?tab栏的文字,会变成一个文本框,修改里面的内容后失去焦点或点击enter键修改成功。 小tip:中间还会出现很多小小的bug,友友们在写的时候一定要注意哦! |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 7:59:40- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |