jQuery中的事件&两种页面加载完成之后的区别

事件的冒泡:父子元素同时监听一个事件,当子元素的事件触发时,父元素也会响应这个事件
阻止事件冒泡:在子元素事件函数体中 return false即可

事件对象

  • js在封装有触发事件的信息时会产生一个事件对象
  • 如何获取这个对象
    在给元素绑定事件的时候,在function(event){}中传入一个event参数,这个event就是js产生的事件对象。
    event事件对象中包含了很多信息,可以根据这些信息进行一些操作。例如使用event.type就可以得到事件是什么类型的事件。

$(function(){});和window.onload=function(){}的区别

  1. 触发顺序
    jQuery的页面加载完成之后 先执行,原生的页面加载完成之后 后执行

  2. 他们的触发时机

  • jQuery页面加载完成之后是在 浏览器解析完页面内容,把所有标签的dom对象创建出来之后就会立即执行
  • 而原生js的页面加载完成之后还需要等待 标签需要显示的内容 (图片,链接等)加载完成才能显示
  1. 他们的执行次数
  • 如果有多个原生页面加载完成之后,原生js只会执行最后一个(因为window.onload=function(){}它是赋值操作,会覆盖前面的)
  • jQuery的页面加载完成后 如果有多个,会依次执行

另外几个事件

  • 事件的触发与绑定(以click()点击事件为例)
    • click(function(){})参数中传入了function,这样称之为绑定
    • click();之间调用这个函数,不传参数,称为触发这个事件
  1. click()---------点击事件

  2. mouseover()-----鼠标移入
    用法:选择器.mouseout()【也可以传一个函数作为参数作为鼠标移入后的响应事件】

  3. mouseout()------鼠标移除
    用法:选择器.mouseout()【也可以传一个函数作为参数作为鼠标移出后的响应事件】

  4. bind()----------可以给元素一次性绑定一个或多个事件(多个事件之间空格隔开)
    用法:选择器.bind("事件 事件",function(){事件触发的函数})

  5. one()-----------与bind()用法一样,但是每个事件只会触发一次

  6. unbind()--------与unbind()相反,解除事件的绑定

  7. live()----------可以绑定选择器选择的所有元素,即使这个元素是后面动态创建出来的也可以绑定。(例如,通过appendTo()添加的标签也能绑定成功)

posted @ 2021-10-22 14:34  这个世界会好的  阅读(281)  评论(0编辑  收藏  举报