vue遞歸獲取父元素的元素實(shí)例
使用遞歸查找父元素,知道查到想要的元素,然后return
getParentTag(startTag) { var self = this; // 傳入標(biāo)簽是否是DOM對象 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操作)
我就廢話不多說了,大家還是看代碼吧~
<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í)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Ajax實(shí)現(xiàn)文件上傳功能(Spring MVC)2. 基于javaweb+jsp實(shí)現(xiàn)學(xué)生宿舍管理系統(tǒng)3. idea設(shè)置代碼格式化的方法步驟4. Python 簡介5. Java Synchronized的使用詳解6. Vue發(fā)布訂閱模式實(shí)現(xiàn)過程圖解7. 手把手教你怎么創(chuàng)建spring項(xiàng)目8. asp createTextFile生成文本文件支持utf89. 使用EF Code First搭建簡易ASP.NET MVC網(wǎng)站并允許數(shù)據(jù)庫遷移10. xml創(chuàng)建節(jié)點(diǎn)(根節(jié)點(diǎn)、子節(jié)點(diǎn))
