Vue事件获取事件对象之event.currentTarget详解

 更新时间:2024年03月24日 08:42:16   作者:姜泥断了姒  
这篇文章主要介绍了Vue事件获取事件对象之event.currentTarget,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

vue事件获取事件对象event.currentTarget

在学习vue的时候,在进行tab栏切换的时候,突然发现不能像jquery一样$(this)获取事件,然后才发现在vue里面获取事件对象可以用event.currentTarget来获取

获取事件对象

  • js的事件可以直接用this获取事件对象,
  • jQuery可以使用$(this)来获取事件对象。
  • vue借助事件的 event 对象 currentTarget 获取事件对象

event.currentTarget

  • HTML
 <ul>
     <li v-for="(item,item2) in catitmlst" v-bind:index="item2" v-on:click="eventObj">
         <span id="eventobj">事件对象</span>
     </li>
</ul>
  • JS
//获取事件对象
    eventObject(event){
        let html = event.currentTarget
        console.log(html)
        //获得点击元素的前一个元素
        event.currentTarget.previousElementSibling.innerHTML
        //获得点击元素的第一个子元素
        event.currentTarget.firstElementChild
        //获得点击元素的下一个元素
        event.currentTarget.nextElementSibling
        //获得点击元素中id为eventobj的元素
        event.currentTarget.getElementById("eventobj")
        //获得点击元素的index(自定义的属性)
        event.currentTarget.getAttribute('index')
        //获得点击元素的父级元素
        event.currentTarget.parentElement
        //获得点击元素的前一个元素的第一个子元素的HTML值
        event.currentTarget.previousElementSibling.firstElementChild.innerHTML
    }

我目前还不是特别清楚,等我彻底搞明白了,我会在重新解释一下vue获取事件对象。

IE不兼容event.currentTarget

vue开发时实现点击选中获取DOM效果使用:

JSON.parse(event.currentTarget.nextElementSibling.innerText);

但IE不兼容,改换为:

JSON.parse(event.srcElement.parentNode.lastChild.innerText);

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue3+ElementPlus使用lang="ts"报Unexpected token错误的解决办法

    vue3+ElementPlus使用lang="ts"报Unexpected token错误的解决

    最近开发中遇到了些问题,跟大家分享下,这篇文章主要给大家介绍了关于vue3+ElementPlus使用lang="ts"报Unexpected token错误的解决办法,需要的朋友可以参考下
    2023-01-01
  • vue动态路由配置及路由传参的方式

    vue动态路由配置及路由传参的方式

    这篇文章主要介绍了vue动态路由配置,vue路由传参的方式,文中给大家提到了router-link这个组件的相关知识,需要的朋友可以参考下
    2018-05-05
  • vue中如何给el-table-column添加指定列的点击事件

    vue中如何给el-table-column添加指定列的点击事件

    elementui中提供了点击行处理事件,下面这篇文章主要给大家介绍了关于vue中如何给el-table-column添加指定列的点击事件,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • vue实现动态给id赋值,点击事件获取当前点击的元素的id操作

    vue实现动态给id赋值,点击事件获取当前点击的元素的id操作

    这篇文章主要介绍了vue实现动态给id赋值,点击事件获取当前点击的元素的id操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • vue实现动态进度条效果

    vue实现动态进度条效果

    这篇文章主要为大家详细介绍了vue实现动态进度条效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • 利用Vue3+Element Plus封装公共表格组件(带源码)

    利用Vue3+Element Plus封装公共表格组件(带源码)

    最近公司项目中频繁会使用到table表格,而且前端技术这一块也用到了vue3来开发,所以基于element plus table做了一个二次封装的组件,这篇文章主要给大家介绍了关于利用Vue3+Element Plus封装公共表格组件的相关资料,需要的朋友可以参考下
    2023-11-11
  • vue中使用iview自定义验证关键词输入框问题及解决方法

    vue中使用iview自定义验证关键词输入框问题及解决方法

    这篇文章主要介绍了vue中使用iview自定义验证关键词输入框问题及解决方法,本文通过实例结合代码的形式给大家介绍解决方法,需要的朋友可以参考下
    2018-03-03
  • 如何在Vue中使用protobuf

    如何在Vue中使用protobuf

    这篇文章主要介绍了如何在Vue中使用protobuf,protobuf是由google推出的和语言无关和平台无关,几乎支持当前的大部分语言,如JavaScript,下文更多相关介绍需要的小伙伴可以参考一下
    2022-03-03
  • vue实现吸顶、锚点和滚动高亮按钮效果

    vue实现吸顶、锚点和滚动高亮按钮效果

    这篇文章主要介绍了vue实现一个简单的吸顶、锚点和滚动高亮按钮效果,需要的朋友可以参考下
    2019-10-10
  • vue 如何获取视频第一帧

    vue 如何获取视频第一帧

    这篇文章主要介绍了vue 如何获取视频第一帧,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10

最新评论