下面我将详细讲解关于“JS前端知识点offset,scroll,client,冒泡,事件对象的应用整理总结”的攻略以及示例说明。
下面我将详细讲解关于“JS前端知识点offset,scroll,client,冒泡,事件对象的应用整理总结”的攻略以及示例说明。
标题
一、offset、scroll、client的应用说明
1. offset
offset
是获取元素相对于其offsetParent的位置信息,包括元素的宽高、距离上下左右的距离。使用offsetLeft
和offsetTop
属性来获取距离最近的已经定位的父级的offsetLeft
和offsetTop
值,并将它们相加,就能得出元素在文档中的绝对位置。
示例说明:
<div style="position: relative; left: 50px">
<div id="box1" style="position: relative; left: 100px; top: 100px"></div>
</div>
<script type="text/javascript">
var box1 = document.getElementById('box1');
console.log(box1.offsetLeft) // 输出 100
console.log(box1.offsetTop) // 输出 100
</script>
2. scroll
scroll
是获取元素在滚动时的位置信息,包括元素的宽高、距离屏幕上下左右的距离。使用scrollTop
和scrollLeft
属性来获取元素在垂直和水平方向的滚动值。
示例说明:
<div style="height: 200px; overflow: scroll;">
<p id="box2" style="height: 500px"></p>
</div>
<script type="text/javascript">
var box2 = document.getElementById('box2');
console.log(box2.scrollHeight) // 输出 500
console.log(box2.scrollTop) // 输出 0
</script>
3. client
client
是获取元素在窗口中的位置信息,包括元素的宽高、距离窗口上下左右的距离。使用clientWidth
和clientHeight
属性来获取元素可视区的宽高。使用clientTop
和clientLeft
属性来获取元素边框宽度。
示例说明:
<div style="height: 200px; overflow: scroll;">
<p id="box3" style="height: 500px"></p>
</div>
<script type="text/javascript">
var box3 = document.getElementById('box3');
console.log(box3.clientWidth) // 输出 188
console.log(box3.clientHeight)// 输出 200
console.log(box3.clientLeft) // 输出 1
console.log(box3.clientTop) // 输出 1
</script>
二、冒泡与事件对象的应用
1. 冒泡
事件的冒泡是指,事件被触发后,从最内层的元素开始,逐层向外执行。当每个元素都完成处理后,最终事件会回到文档树的根节点。可以使用event.stopPropagation()
来阻止事件的冒泡。
示例说明:
<div id="parent">
<div id="child"></div>
</div>
<script type="text/javascript">
var parent = document.getElementById('parent');
var child = document.getElementById('child');
parent.addEventListener('click', function(){
console.log('parent clicked');
});
child.addEventListener('click', function(event){
event.stopPropagation();
console.log('child clicked');
});
</script>
2. 事件对象
事件对象是指在响应事件的函数内部自动生成的一个对象,它包含了与事件相关的信息。可以使用event.target
来获取触发事件的目标元素。可以使用event.preventDefault()
来阻止默认的事件行为。
示例说明:
<a href="https://www.baidu.com" id="link">baidu</a>
<script type="text/javascript">
var link = document.getElementById('link');
link.addEventListener('click', function(event){
event.preventDefault();
console.log(event.target.href); // 输出 https://www.baidu.com
});
</script>
结束语
以上就是关于“JS前端知识点offset,scroll,client,冒泡,事件对象的应用整理总结”的攻略和示例说明。希望对大家有所帮助。
本文标题为:JS前端知识点offset,scroll,client,冒泡,事件对象的应用整理总结


- css 层叠与z-index的示例代码 2023-12-13
- vue组件,局部组件,全局组件,模板抽取 2023-10-08
- 一个简易的js图片轮播效果 2023-12-02
- “Windows Phone HTML5 App”和“Javascript Windows Store Project”之间的区别 2023-10-25
- python爬虫selenium和phantomJs使用方法解析 2023-12-25
- 利用CSS3实现平移动画效果示例代码 2024-01-04
- ajax异步请求刷新 2023-01-20
- css3+伪元素实现鼠标移入时下划线向两边展开的效果 2023-12-14
- css中让元素隐藏的多种方法 2024-01-02
- 非常实用的ajax用户注册模块 2023-01-20