jQuery事件2-第6次课-给未来的元素绑事件-事件对象-JS盒模型-附案例、任务

简介: jQuery事件2-第6次课-给未来的元素绑事件-事件对象-JS盒模型-附案例、任务
一、给未来的元素绑事件(官方推荐的方式)-on
  1. 像bind那样使用,但是不能给未来的元素绑定
$(元素).bind("click",function(){});
//on
$(元素).on("click",function(){});
//比如
$("div").on("click",function(){});
  1. 事件委托(用on来实现)
//含义:即将原本发生在元素身上的事件委托给父级来监听。适用于给未来的元素绑定
   //即不给元素绑定,而是给祖先绑
   <ul>
       <li>123</li>
       <li>123</li>
   </ul>
   //原本要给li标签绑定事件,但是现在不给他绑,而是代理给它父级来绑定
   <script>
       //不用事件委托:
       $("li").on("click",function(){});
       //用了事件委托:
       $('祖先').on("原本要绑定事件的元素","click",function(){});
       //比如:
       $('ul').on("click","li",function(){});
   </script>
二、事件对象

和JS一样。都记录事件发生时的那些细节。行车记录仪。比如你点击了哪个按钮,哪个键盘,当前坐标,是否冒泡等都被记录了。

只需要在事件处理程序(事件函数)写一个参数即可。

1. 
$("div").click(function(e){
    console.log(e);
    //打印,得到该对象的宝库,所有的方法和属性
});
2.
$("div").bind("click",function(e){
    console.log(e);
});
3.
$('ul').on("click","li",function(e){});
  1. 重要的属性
    e.clientX 鼠标点击的x坐标(相对的)(浏览器的可视范围内)
    e.clientY 鼠标点击的y坐标
    e.pageX 鼠标点击的x方向的绝对坐标(包括浏览器被卷去的宽度度)
    e.pageY 鼠标点击的y方向的绝对坐标(包括浏览器被卷去的高度)
    e.keyCode 键码
    e.which 鼠标按键,1 表示左键,2中,3右键
  2. 重要的方法
    e.stopPropagation(); //阻止事件冒泡
    e.preventDefault(); //阻止默认事件
三、滚动条事件
  1. 事件
//任何元素都有滚动条事件,只要该元素有滚动条,就可以给其绑定滚动条事件,从而在滚动滚动条时,触发它
$("body").on("scroll",function(){
});
  1. 被卷去的高度和宽度
1. 高度
//JS
元素.scrollTop;
//JQ:
$(元素).scrollTop();
2. 宽度
元素.scrollLeft;
//JQ:
$(元素).scrollLeft();
  1. 页面的总宽和总高
1. 总高
元素.scrollHeight;
//JQ没有,用JS的来代替
2. 总宽
元素.scrollWidth;
//JQ没有,用JS的来代替
四、JQ的盒模型
  1. 定位父级
//一个元素有2个父级,直接父级,一个是定位父级
JS:
元素.parentNode;//亲爹
元素.offsetParent;//干爹,会改,跟着css的postion
JQ:
$(元素).parent();//亲爹
$(元素).offsetParent();//干爹
  1. 元素的绝对水平距离
一般我们只需要该元素到浏览器最左侧和最顶部的绝对距离
//JS ,自己写了一个方法:getPos()
元素.getPos().left;
//JQ不需要自己造轮子,直接调用它给我们封装好的方法,直接用即可
$("元素").offset().left;
  1. 元素的绝对垂直距离
$("元素").offset().top;
相关单词
  1. on 在什么的上面
  2. in 在。。。的里面

资料、作业、笔记下载链接: https://www.imqd.cn/jquery-dom.html

相关文章
|
12月前
|
JSON JavaScript 数据格式
jqtimeline.js-简单又好用的jquery时间轴插件
jqtimeline.js-简单又好用的jquery时间轴插件
|
JavaScript 前端开发 索引
40个JS常用使用技巧案例
大家好,我是V哥。在日常开发中,JS是解决页面交互的利器。V哥总结了40个实用的JS小技巧,涵盖数组操作、对象处理、函数使用等,并附带案例代码和解释。从数组去重到异步函数,这些技巧能显著提升开发效率。先赞再看后评论,腰缠万贯财进门。关注威哥爱编程,全栈开发就你行!
366 16
|
12月前
|
JavaScript 前端开发 Java
深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解
Array.find() 是 JavaScript 数组方法中一个非常实用和强大的工具。它不仅提供了简洁的查找操作,还具有性能上的独特优势:返回的引用能够直接影响原数组的数据内容,使得数据更新更加高效。通过各种场景的展示,我们可以看到 Array.find() 在更新、条件查找和嵌套结构查找等场景中的广泛应用。 在实际开发中,掌握 Array.find() 的特性和使用技巧,可以让代码更加简洁高效,特别是在需要直接修改原数据内容的情形。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一
|
12月前
|
监控 JavaScript 前端开发
MutationObserver详解+案例——深入理解 JavaScript 中的 MutationObserver:原理与实战案例
MutationObserver 是一个非常强大的 API,提供了一种高效、灵活的方式来监听和响应 DOM 变化。它解决了传统 DOM 事件监听器的诸多局限性,通过异步、批量的方式处理 DOM 变化,大大提高了性能和效率。在实际开发中,合理使用 MutationObserver 可以帮助我们更好地控制 DOM 操作,提高代码的健壮性和可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
MutationObserver详解+案例——深入理解 JavaScript 中的 MutationObserver:原理与实战案例
|
JavaScript 前端开发
Node.js 中实现多任务下载的并发控制策略
Node.js 中实现多任务下载的并发控制策略
423 15
|
JavaScript 前端开发
js+jquery实现贪吃蛇经典小游戏
本项目采用HTML、CSS、JavaScript和jQuery技术,无需游戏框架支持。通过下载项目文件至本地,双击index.html即可启动贪吃蛇游戏。游戏界面简洁,支持方向键控制蛇移动,空格键实现游戏暂停与恢复功能。
433 14
|
JavaScript 前端开发 开发者
jQuery:JavaScript库的瑰宝
jQuery:JavaScript库的瑰宝
329 3
|
JavaScript 前端开发
JavaScript - 测试 jQuery
JavaScript - 测试 jQuery
113 1
|
JavaScript 前端开发 API
深入了解jQuery:快速、高效的JavaScript库
【10月更文挑战第11天深入了解jQuery:快速、高效的JavaScript库
214 0
|
JavaScript 前端开发 调度
在JavaScript中异步任务里的微任务和宏任务的特点和生命周期
在JavaScript中异步任务里的微任务和宏任务的特点和生命周期
206 0