当前位置: 首页 > java >正文

js day9

js当中与滚动相关的属性

<div>haha</div>
<script>let box=document.querySelector("div")box.addEventListener("scoll",function(e)){console.log(window.scrolltop)
}//往上走了
</script>

,box.scrollHeight——获取元素内容的实际高度和宽度,只读

box.clientHeight——获取元素对象可视区域的宽高,包含padding 不包含滚动条,margin

操作节点——查找节点

<div class="father"><div class="son1">子盒子</div><div class="son2">子盒子</div><div class="son3">子盒子</div><div class="son4">子盒子</div><div class="son5">子盒子</div>
</div>
//子节点如何获取父节点
<script>
const son3=document.querySelector(".son5")
console.log(son3.parentNode)
//查找子节点
const father=document.querySelector(".father")
console.log(father.children)
//查找兄弟节点
const son3=document.querySelector(".son3")
console.log(son3.nextElementSibling)//下一兄弟节点
console.log(son3.previousElementSibling)//上一兄弟节点

节点的创建和追加

<ul><li>zs</li>
</ul>
<script>
//1.创建节点
//document.createElement("要创建的点")
let newli=document.createElement("li")
newli.innerHTML=`<div class="box1">这是动态节点</div>`
console.log(newli)
//追加节点  父元素.appendChild(子节点)  默认是追加到父元素最后一个子元素之后
ul.appendChild(newli)//将newli加入ul中
//将newli追加
ul.innsertBefore(newli,ul.children[1])
</script>

事件流(捕获或冒泡)

<div class="gf"><div class="f"><div class="son"><div><div>
<div>
<script>
//addEventListener 第三个参数默认是false,表示冒泡
//若为true,表示捕获
const gf=document.querySelector(".gf")
const f=document.querySelector(".f")
const s0n=document.querySelector(".son")gf.addEventListener("click",function(){console.log("我是你爷爷")},true)f.addEventListener("click",function(){console.log("我是你爹")
e.stopPropagation()//阻止元素对象的冒泡或捕获
},true)</script>

事件的委托

<ul><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li>
</ul>
<script>
const lis=document.querySelectorAll("li")
lis.forEach(li=>{
li.addEventListener("click",function(){
document.querySelector(".active").classList.remove
li.classist.add(".active")
})
})
</script>

方法二

<ul><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li><li>我是li</li>
</ul>
<script>
let ul=document.querySelector("ul")
ul.addEventListener("click",function(e){
document.querySelector(".active").classist.remove
e.target.classist.add(".active")
//e.target存放的是触发事件的元素对象
})

http://www.xdnf.cn/news/2982.html

相关文章:

  • 按键精灵安卓ios辅助工具脚本:实用的文件插件(lua开源)
  • 解决ktransformers v0.3 docker镜像中 operator torchvision::nms does not exist 问题
  • Redis入门到实战——基础篇
  • JavaSE第12篇:接口interface
  • Shopify网上商店GraphQL Admin接口查询实战
  • keep-alive具体使用方法
  • 我心中的现代前端大厦
  • LabVIEW模板之温度监测应用
  • dx11 龙宝书 第五 六章 流水线
  • leetcode 2962. 统计最大元素出现至少 K 次的子数组 中等
  • 规范编码策略以及AST的应用的学习
  • 如何使用 Nacos 对 Python 服务进行服务发现与注册
  • 【Dify系列教程重置精品版】第三章:Dify平台的本地化部署
  • Idea 如何配合 grep console过滤并分析文件
  • 关于浏览器对于HTML实体编码,urlencode,Unicode解析
  • Janus-1B评测
  • vue 优化策略,大白话版本
  • 一页概览:统一数据保护方案
  • Discord多账号注册登录:如何同时管理多个账户?
  • 全球667629个流域90m分辨率数据(流域参数含:面积、长度、宽度、纵横比、坡度和高程等)
  • 借助Spring AI实现智能体代理模式:从理论到实践
  • 案例解析:基于量子计算的分子对接-QDOCK(Quantum Docking)
  • 2025年深圳软件开发公司推荐
  • Laravel+API 接口
  • Mybatis-plus代码生成器的创建使用与详细解释
  • 环境-疲劳载荷综合试验系统
  • AI日报 - 2025年04月30日
  • Weiss Robotics的WPG与WSG系列紧凑型机器人夹爪,精准、灵活、高效
  • LoRA 微调技术详解:参数高效的大模型轻量化适配方案
  • 【嘉立创EDA】如何找到曲线和直线的交点,或找到弧线和直线的交点