vue遞歸獲取父元素的元素實(shí)例
使用遞歸查找父元素,知道查到想要的元素,然后return
getParentTag(startTag) {
var self = this;
// 傳入標(biāo)簽是否是DOM對(duì)象
if (!(startTag instanceof HTMLElement)) return;
// 父級(jí)標(biāo)簽是否是body,是著停止返回集合,反之繼續(xù)
let nodeName = "";
if (startTag.parentElement) {
nodeName = startTag.parentElement.nodeName ? startTag.parentElement.nodeName : "";
} else {
return;
}
if ("BODY" !== nodeName) {
if (nodeName == "TD") {
return startTag.parentElement;
} else {
if (startTag.parentElement.parentElement) {
return self.getParentTag(startTag.parentElement);
} else {
return false;
}
}
}
}
調(diào)用函數(shù)
this.getParentTag(event.target);
補(bǔ)充知識(shí):Vue.js如何獲得兄弟元素,子元素,父元素(DOM操作)
我就廢話不多說(shuō)了,大家還是看代碼吧~
<button @click = “clickfun($event)”>點(diǎn)擊</button>
methods: {
clickfun(e) {
// e.target 是你當(dāng)前點(diǎn)擊的元素
// e.currentTarget 是你綁定事件的元素
#獲得點(diǎn)擊元素的前一個(gè)元素
e.currentTarget.previousElementSibling.innerHTML
#獲得點(diǎn)擊元素的第一個(gè)子元素
e.currentTarget.firstElementChild
# 獲得點(diǎn)擊元素的下一個(gè)元素
e.currentTarget.nextElementSibling
# 獲得點(diǎn)擊元素中id為string的元素
e.currentTarget.getElementById("string")
# 獲得點(diǎn)擊元素的string屬性
e.currentTarget.getAttributeNode('string')
# 獲得點(diǎn)擊元素的父級(jí)元素
e.currentTarget.parentElement
# 獲得點(diǎn)擊元素的前一個(gè)元素的第一個(gè)子元素的HTML值
e.currentTarget.previousElementSibling.firstElementChild.innerHTML
}
},
以上這篇vue遞歸獲取父元素的元素實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
element-ui中如何給el-table的某一行或某一列加樣式
本文主要介紹了element-ui中怎么給el-table的某一行或某一列加樣式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
Vue使用pinia管理數(shù)據(jù)pinia持久化存儲(chǔ)問(wèn)題
這篇文章主要介紹了Vue使用pinia管理數(shù)據(jù)pinia持久化存儲(chǔ)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03
基于Vue+ECharts實(shí)現(xiàn)地圖展示與交互
這篇文章中,我將逐步介紹如何使用 Vue 和 ECharts 實(shí)現(xiàn)一個(gè)互動(dòng)式的地圖展示組件,其中支持返回上一層地圖、點(diǎn)擊查看不同城市的詳細(xì)信息,以及根據(jù)數(shù)據(jù)動(dòng)態(tài)展示不同的統(tǒng)計(jì)信息,感興趣的小伙伴跟著小編一起來(lái)看看吧2025-02-02
Vite創(chuàng)建Vue3項(xiàng)目及Vue3使用jsx詳解
vite是新一代的前端構(gòu)建工具,下面這篇文章主要給大家介紹了關(guān)于Vite創(chuàng)建Vue3項(xiàng)目以及Vue3使用jsx的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08
Vue+Echarts實(shí)現(xiàn)繪制多設(shè)備狀態(tài)甘特圖
這篇文章主要為大家詳細(xì)介紹了Vue如何結(jié)合Echarts實(shí)現(xiàn)繪制多設(shè)備狀態(tài)甘特圖,文中的示例代碼講解詳細(xì),有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-03-03
electron+vue?實(shí)現(xiàn)靜默打印功能
這篇文章主要介紹了electron+vue?實(shí)現(xiàn)靜默打印功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06

