写好JS的原则|青训营
- 各司其职。让HTML、CSS和JavaScript职能分离
- 组件封装。好的UI组件具备正确性、扩展性和复用性
- 过程抽象。应用函数编程的思想
示例:要求实现一个方法,点击可进行夜间模式切换 第一种方式
const btn=document.getElementById('modelBtn')
btn.addEventListener('click',(event)=>{
const body=document.body
if(event.target.innerHTML=='light'){
body.style.backgroundColor='black'
body.style.color='white'
event.target.innerHTML='night'
}else{
body.style.backgroundColor='white'
body.style.color='black'
event.target.innerHTML='light'
}
})
此方法存在的问题:直接在代码中操作CSS,不便后来的人员对程序进行修改。 第二种方式
const btn=document.getElementById('modelBtn')
btn.addEventListener('click',(event)=>{
const body=document.body
if(body.className!=='night'){
body.className='night'
}else{
body.className=''
}
})
该方法直接避免了在JS中直接操作CSS,但是样式切换本质是CSS的工作,此时依然是在JS中完成对CSS的操作。 第三种方式:使用纯css特性,使用伪类来操作,例如:hover,:checked等
写好JS的结论:
- HTML、CSS、JS各司其职
- 应当避免不必要的由JS直接操作样式
- 可以使用class来表示状态
- 纯展示类交互应该尽量避免使用JS
那么,究竟如何才能做到分离呢? 首先需要了解CSS中一些特殊元素,比如伪类选择器,奇数选择器,算中状态等等,这些内容可以帮助我们更流畅地操作CSS,遇到这种问题,应该首先考虑是否能用CSS本身的内容解决,如果解决不了,再考虑是否能通过在JS中切换CSS中的class进行操作
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfkhech
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01