[前端] todoList制作

2024-04-28 05:20

本文主要是介绍[前端] todoList制作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

知识点回顾

  1. 后代选择器 可以使用多个选择器每个选择器之间用空格分开。只要是后代就会被选择如
<style>div a{color: red;}
</style>
<div><a href="">我是儿子</a><p><a href="">我是孙子</a></p>
</div>

此时两个超链接都会变色
2. 子代选择器 可以使用多个选择器每个选择器之间用 > 分割。只有子代才会被选择

<style>div>a{color: red;}
</style>
<div><a href="">我是儿子</a><p><a href="">我是孙子</a></p>
</div>

第一个超链接才会变成红色
3. 如何去除html自带的 li 的样式

li {list-style:none;
}
  1. 如果一个div盒子有高度,如何让里面的文字垂直居中
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>测试input checkbox的label</title><style>div{height: 40px;border: 1px solid pink;line-height: 40px;}</style>
</head>
<body><div>真的笑不出来了</div><script></script>
</body>
</html>

使用 line-height 即可。
5. 插入一个节点,使用document.createElement("<tagName>") 使用 append 表示在尾后插入一个子节点,使用prepend 表示在头部插入一个子节点。
after 则是在这个节点后插入一个兄弟节点,before 则是在这个节点前面插入一个兄弟节点。删除节点很爽不需要知道这个节点的父节点是什么直接调用remove()方法即可。

<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>插入删除节点例子</title>
</head>
<body><button id="id_btn_add">点击增加节点</button><button id="id_btn_delete">点击删除节点(删除年级)</button><ul><li>一年级<ul><li>小明</li><li>小红</li></ul></li><li>二年级<ul><li>老王</li><li>杰哥</li></ul></li></ul><script>let btnAdd = document.querySelector("#id_btn_add");btnAdd.addEventListener("click", e => {let ulEle = document.querySelector("body>ul");let liEle = document.createElement("li");liEle.innerHTML = '三年级<ul><li>翠翠</li><li>兰兰</li></ul>';ulEle.append(liEle);let test = document.querySelectorAll("body>ul>li");let grandLiEle = test[0].querySelectorAll("ul>li")[0];let newLiEle = document.createElement("li");newLiEle.innerHTML = "八戒";grandLiEle.after(newLiEle);});let btnDele = document.querySelector("#id_btn_delete");btnDele.addEventListener("click", e => {let liNodeList = document.querySelectorAll("body>ul>li");if(liNodeList.length > 0){liNodeList[liNodeList.length - 1].remove();}else{alert("没有元素可以删除了");}});</script>
</body>
</html>
  1. 事件的冒泡,冒泡这个特性还是经常用到的,真正产生事件的html元素通过 event.target来获取。获取到对应的html元素后,就可以有很多操作了,如 parentNode 来获取该元素的父亲元素。nodeName 来获取节点名称等等
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>事件的冒泡</title><style>div{height: 60px;border: 1px solid pink;}</style>
</head>
<body><div class="wrapper" id="id_box"><ul><li>我是小明</li></ul></div><script>let divEle = document.querySelector("#id_box");divEle.addEventListener("click", event => {console.log(event.target);});</script>
</body>
</html>
  1. html中并没有什么直接方法来获取 ul 或者 ol 下面 li的数量。还是得通过querySelectorAll()接口来获取
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>事件的冒泡</title><style>div{height: 60px;border: 1px solid pink;}</style>
</head>
<body><button id="id_btn">获取li的数量</button><ul><li>小红</li><li>大白</li><li>丽丽</li></ul><script>let btnEle = document.querySelector("#id_btn");let ulEle = document.querySelectorAll("body>ul>li");btnEle.addEventListener("click", event => {console.log(ulEle.length);});</script>
</body>
</html>
  1. 正则表达式向后向前环视,(首先书上写JavaScript不支持环视,但是现在JavaScript是支持的)。
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>正则表达式环视</title><style>div{height: 60px;border: 1px solid pink;}</style>
</head>
<body><script>let str = "已完成8/全部10";let str1 = "https://www.forta.com";let complete = str.match(/(?<=已完成)[0-9]+/);let total = str1.match(/\w+(?=:)/);console.log(complete[0]);console.log(total[0]);</script>
</body>
</html>

环视挺好用的

这篇关于[前端] todoList制作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/942411

相关文章

Vue中动态权限到按钮的完整实现方案详解

《Vue中动态权限到按钮的完整实现方案详解》这篇文章主要为大家详细介绍了Vue如何在现有方案的基础上加入对路由的增、删、改、查权限控制,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、数据库设计扩展1.1 修改路由表(routes)1.2 修改角色与路由权限表(role_routes)二、后端接口设计

Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)

《Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)》文章介绍了如何使用dhtmlx-gantt组件来实现公司的甘特图需求,并提供了一个简单的Vue组件示例,文章还分享了一... 目录一、首先 npm 安装插件二、创建一个vue组件三、业务页面内 引用自定义组件:四、dhtmlx

Vue ElementUI中Upload组件批量上传的实现代码

《VueElementUI中Upload组件批量上传的实现代码》ElementUI中Upload组件批量上传通过获取upload组件的DOM、文件、上传地址和数据,封装uploadFiles方法,使... ElementUI中Upload组件如何批量上传首先就是upload组件 <el-upl

前端知识点之Javascript选择输入框confirm用法

《前端知识点之Javascript选择输入框confirm用法》:本文主要介绍JavaScript中的confirm方法的基本用法、功能特点、注意事项及常见用途,文中通过代码介绍的非常详细,对大家... 目录1. 基本用法2. 功能特点①阻塞行为:confirm 对话框会阻塞脚本的执行,直到用户作出选择。②

如何使用CSS3实现波浪式图片墙

《如何使用CSS3实现波浪式图片墙》:本文主要介绍了如何使用CSS3的transform属性和动画技巧实现波浪式图片墙,通过设置图片的垂直偏移量,并使用动画使其周期性地改变位置,可以创建出动态且具有波浪效果的图片墙,同时,还强调了响应式设计的重要性,以确保图片墙在不同设备上都能良好显示,详细内容请阅读本文,希望能对你有所帮助...

CSS3 最强二维布局系统之Grid 网格布局

《CSS3最强二维布局系统之Grid网格布局》CS3的Grid网格布局是目前最强的二维布局系统,可以同时对列和行进行处理,将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局,本文介... 深入学习 css3 目前最强大的布局系统 Grid 网格布局Grid 网格布局的基本认识Grid 网

HTML5中下拉框<select>标签的属性和样式详解

《HTML5中下拉框<select>标签的属性和样式详解》在HTML5中,下拉框(select标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中选择值的方式,本文将深入探讨select标签的... 在html5中,下拉框(<select>标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中

前端 CSS 动态设置样式::class、:style 等技巧(推荐)

《前端CSS动态设置样式::class、:style等技巧(推荐)》:本文主要介绍了Vue.js中动态绑定类名和内联样式的两种方法:对象语法和数组语法,通过对象语法,可以根据条件动态切换类名或样式;通过数组语法,可以同时绑定多个类名或样式,此外,还可以结合计算属性来生成复杂的类名或样式对象,详细内容请阅读本文,希望能对你有所帮助...

禁止HTML页面滚动的操作方法

《禁止HTML页面滚动的操作方法》:本文主要介绍了三种禁止HTML页面滚动的方法:通过CSS的overflow属性、使用JavaScript的滚动事件监听器以及使用CSS的position:fixed属性,每种方法都有其适用场景和优缺点,详细内容请阅读本文,希望能对你有所帮助... 在前端开发中,禁止htm

Vue3中的动态组件详解

《Vue3中的动态组件详解》本文介绍了Vue3中的动态组件,通过`component:is=动态组件名或组件对象/component`来实现根据条件动态渲染不同的组件,此外,还提到了使用`markRa... 目录vue3动态组件动态组件的基本使用第一种写法第二种写法性能优化解决方法总结Vue3动态组件动态