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

如果做二手车网站/专业营销团队外包公司

如果做二手车网站,专业营销团队外包公司,设计做笔记的网站,安能建设总公司网站打不开说在前面:首先说一下两者之间的区别,假设当前元素为element,mouseover事件具有冒泡特性,也就是说无论鼠标是从别的元素移动到element或者是从element的子元素移动到element都会触发mouseover事件。对于mouseenter事件,…

说在前面:首先说一下两者之间的区别,假设当前元素为element,mouseover事件具有冒泡特性,也就是说无论鼠标是从别的元素移动到element或者是从element的子元素移动到element都会触发mouseover事件。对于mouseenter事件,该事件没有冒泡特性,也就是说只有鼠标穿过该事件的时候才会触发mouseenter,如果鼠标一直在element内部“游走”,则不会触发mouseenter。具体的例子可以参考这个例子点击打开链接。

前提说完了,那么怎么使用mouseover实现mouseenter呢!

我们先来看看jQuery是怎么实现的,下面是jQuery中实现mouseenter以及mouseleave的代码:

 

jQuery.each({mouseenter: "mouseover",mouseleave: "mouseout"
}, function( orig, fix ) {jQuery.event.special[ orig ] = {delegateType: fix,bindType: fix,handle: function( event ) {var ret,target = this,related = event.relatedTarget,handleObj = event.handleObj;// For mousenter/leave call the handler if related is outside the target.// NB: No relatedTarget if the mouse left/entered the browser windowif ( !related || (related !== target && !jQuery.contains( target, related )) ) {event.type = handleObj.origType;ret = handleObj.handler.apply( this, arguments );event.type = fix;}return ret;}};
});

  

其他的倒不用看,关键在于if判断语句以及其中的组合条件,我们可以看到如果related是空或者undefined,则表示鼠标已经移动到window上面了,那么这时肯定已经穿过了该元素。为什么这么肯定,我们需要知道的是,底层这个判断语句是在mouseover事件中处理的,related返回的就是鼠标是从哪一个元素移动到element的,如果是window,那么肯定是“穿过”了element.

 

        那么看第二个条件,related!==target && !jQuery.contains(target,related)。我们可以看到target=this;那么target指向的就是element,而related指向的则是由哪一个元素移动到element的,我们知道mouseover和mouseenter的区别在于,在从子元素中移动到element的时候是否触发相应的事件。这个情况就可以用related!==target && jQuery.contains(target,related)给过滤掉。

        通过上一段的解释,我们知道这个条件的作用是,如果是从别的元素移动到element的时候,判断是否是从element的子元素移动过来的,如果是的话,则不触发事件,如果不是的话(!jQuery.contains(target,related)),则说明是从element的“外部”移动过来的,那么就表示鼠标已经穿过了element,就需要触发事件。

        当然了这是jQuery下的实现,如果想用原生的js代码实现,可以结合relatedTarget实现。当然在IE中也许我们会用到fromElement以及toElement相结合的方式来实现。

        这是自己学习过程中的记录了,我的理解可能有误,希望大家在评论中能够提出不足之处。

By Ygh1224  相互学习,相互进步!

转载于:https://www.cnblogs.com/jsn521/p/3702608.html

http://www.lbrq.cn/news/1431163.html

相关文章:

  • 同ip怎么做不同的网站/乐山网站seo
  • 无锡网站排名哪家好/疫情防控最新政策
  • 对新网站做seo大概需要多久/今日国际军事新闻
  • 贵阳高端网站设计公司/app推广平台排行榜
  • 关于化妆品网站成功案例/成功的网络营销案例及分析
  • 网站备案符号/如何被百度收录
  • 做的比较好的网站/百度快速排名 搜
  • 网站开发 周期/网站首页面设计
  • 庆阳网站网站建设/b站视频推广
  • .我爱你 域名网站/百度平台营销软件
  • 曲阜住房和城乡建设局网站/友情链接搜读
  • 男女在床上做孔网站/厦门seo俱乐部
  • 威海做网站公司/软文编辑器
  • 自做网站视频/长沙网站优化指导
  • 做网站499/文库百度登录入口
  • 南京做网站建设有哪些内容/企业网站seo平台
  • 企业网站城市分站系统/深圳知名网络优化公司
  • 应用商城app开发/杭州seo推广公司
  • 购物平台排行榜2021/seo推广培训班
  • 百度百科分类方法/专业seo整站优化
  • .com域名做外贸网站/网站优化内容
  • 今天宁波最新消息/资源优化网站排名
  • 乌鲁木齐正规网站建设电话/国内十大搜索引擎网站
  • 网站做广告如何做帐/b站2023年免费入口
  • 做花酒的网站/网络seo关键词优化技术
  • 杭州网站制作方法/怎么把产品推广到各大平台
  • 普陀做网站/微信小程序开发流程
  • 做电商赚钱吗/南京seo排名扣费
  • 新手学做免费网站软件好/菏泽资深seo报价
  • 深圳网站建设的公司/百度问一问在线咨询客服
  • Wi-Fi 与蜂窝网络(手机网络)的核心区别,以及 Wi-Fi 技术未来的发展方向
  • Linux编程--进程
  • 具身智能Scaling Law缺失:机器人界的“摩尔定律“何时诞生?
  • Morph Studio-一站式AI视频创作平台
  • 第十二节:粒子系统:海量点渲染
  • Spring、Spring MVC、Spring Boot与Spring Cloud的扩展点全面梳理