js——ev || window.event,event.srcElement || event.target

Posted 林景之

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js——ev || window.event,event.srcElement || event.target相关的知识,希望对你有一定的参考价值。

参考:https://blog.csdn.net/u012528184/article/details/41694155

   https://www.cnblogs.com/lilirufeng/p/6045969.html

 

注:我用的是vue,一般js同理。

页面:

<div  @click="getAttribute">
  <div v-for="(item,index) in list" :key="index">
        <p :gid="item.gid">{{item.text}}<p>
   </div>
</div>

 

getAttribute:

getAttribute(ev) {

  var eve = ev || window.event; //兼容写法,在FireFox浏览器中,事件绑定的函数要获取到事件本身,需要从函数中传入,而IE等浏览器则可以直接使用event或者window.event得到事件本身。

  var target = eve.target || eve.srcElement; //兼容写法,IE下,event对象有srcElement属性,但是没有target属性;Firefox下,event对象有target属性,但是没有srcElement属性.但他们的作用是相当的;FF下语法为:event.target。event.srcElement:当前事件的源,相当于jq的$(this)事件,直接获得事件源,就是你产生事件的源;   

  if (target != document) {     
  
    var id = target.getAttribute(\'gid\');   
  } }

以上是关于js——ev || window.event,event.srcElement || event.target的主要内容,如果未能解决你的问题,请参考以下文章

为什么JS事件函数里面都有一个参数(ev)?

javascript常见兼容问题汇总js(主要针对IE)

e.pageX;event.clientX,event.clientY,scrollLeft,clientLeft获取鼠标位置

小知识随手记

js 禁止后退键

存在不同浏览器间的JS兼容总结