【精简笔记】JavaScript进阶内容第三天

往期文章目录

【精简笔记】JavaScript基础内容第一天
【精简笔记】JavaScript基础内容第二天
【精简笔记】JavaScript基础内容第三天
【精简笔记】JavaScript基础内容第四天
【精简笔记】JavaScript基础内容第五天
【精简笔记】JavaScript基础内容大总结
【精简笔记】JavaScript进阶内容第一天
【精简笔记】JavaScript进阶内容第二天



前言

本文主要讲述JS的核心用法,请读者确保已熟悉JS基础语法

今日内容主要是:事件流、事件委托、其他事件、元素尺寸与位置


一、事件流

1.1 什么是事件流?

事件流指的是事件完整执行过程中的流动路径

1.2事件流说明

当触发事件时,会经历两个阶段:捕获阶段和冒泡阶段
捕获阶段是父到子,冒泡阶段是子到父
事件捕获是指当一个元素触发事件后,会从最高级的父级元素的同名事件依次调用
事件冒泡是指当一个元素触发事件后,会依次向上调用所有父级元素的同名事件

1.3阻止冒泡

语法:

事件对象.stopPropagation()

举例说明:

<div class="father">
	<div class="son"></div>
</div>
<script>
	const fa = document.querySelector('.father')
	const son = document.querySelector('.son')
	document.addEventListener('click',function(){
	alert('最大的')
})
	fa.addEventListener('click',function(){
	alert('中等的')
})
	son.addEventListener('click',function(){
	alert('最小的')
	e.stopPropagation()
})
</script>	
	 

1.4解绑事件

function fn(){
	alert('点击')
}
btn.addEventListener('click',fn)
btn.removeEventListener('click',fn)

注意:匿名函数不能解绑事件

1.5 阻止默认行为

<form action="http://www.baidu.cn">
	<input type="submit" value="注册">
</form>
<a href="http://www.baidu.com">百度</a>
<script>
	const form =document.querySelector('form')
	form.addEventListener('submit',function(e){
		e.preventDefault()
})

	const a = document.querySelector('a')
	a.addEventListener('click',function(e){
		e.preventDefault()
}) 
</script>	

二、事件委托

2.1事件委托的用途

减少注册次数,提高程序性能
举例说明:

<ul>
	<li>第一个</li>
	<li>第二个</li>
	<li>第三个</li>
	<p>第四个</p>
</ul>	
<script>
	const ul = document.querySelector('ul')
	ul.addEventListener('click',function(e){
	 if(e.target.tagName === 'LI'){
	 	e.target.style.color = 'red'
	 }
})
</script>

三、其他事件

3.1页面加载事件

第一个用法

<head>
	<script>
		img.addEventListener('load',fn())
		window.addEventListener('load',function(){
			btn.addEventListener('click',function(){
				alert(11)
		})
})
	</script>
</head>

第二用法

document.addEventListener('DOMContentLoaded',function(){})

3.2页面滚动事件

语法:

windows.addEventListener('Scroll',function(){
	//执行的操作
})

举例说明:

const div = document.querySelector('div')
div.addEventListener('scroll',function(){
	console.log(div.scrollTop)//打印被卷去多少 写在函数里面,不然会一直都是0
	console.log(document.documentElement.scrollTop)//打印整个html被卷去多少
})

scrollTop是可读写的,这也就意味着,可以提请赋值

3.3页面尺寸事件

语法:

windows.addEventListner('resize',function(){})
const div = document.querySelector('div')
console.log(div.clientWidth)//获取除border、margin外的盒子的宽度大小

四、元素的尺寸与位置

4.1offsetLeft 和 offsetTop

只读属性
获取加了定位的父级元素的左、上距离

const div =document.querySelector('div')
console.log(div.offsetLeft)

总结

今日的内容是日常开发中较为常见的用法,望读者熟练掌握

  • 15
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
《数理逻辑精简入门第三版.pdf》是一本介绍数理逻辑的简明教材。该教材通过系统化的方式,向读者呈现数理逻辑的基础知识和核心概念。 首先,该教材详细介绍了数理逻辑的起源和发展历史,帮助读者了解数理逻辑的重要性和应用领域。同时,教材对数理逻辑的基本概念行了解释,包括命题、符号、推理规则等。通过学习这些基本概念,读者可以逐步掌握数理逻辑的基础知识。 其次,教材还介绍了数理逻辑中的一些重要推理方法和技巧。例如,教材详细阐述了命题的合取、析取、蕴含等逻辑运算的定义和特点,并通过丰富的例子帮助读者理解这些概念。此外,教材还介绍了常见的推理规则,如假言推理、析取引入等,这些推理规则可以帮助读者更好地行逻辑推理。 最后,教材还探讨了一些数理逻辑的扩展和应用。例如,教材介绍了一逻辑和模态逻辑等的数理逻辑概念,并介绍了它们在哲学、数学、计算机科学等领域中的应用。通过了解这些扩展和应用,读者可以一步扩展自己对数理逻辑的理解。 总的来说,《数理逻辑精简入门第三版.pdf》是一本全面介绍数理逻辑的教材,适合初学者入门。通过学习该教材,读者可以建立起对数理逻辑的基础知识,并掌握一些基本的推理方法和技巧。同时,教材还为读者提供了一步学习和应用数理逻辑的方向和思路。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值