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操作)
我就廢話不多說了,大家還是看代碼吧~
<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è)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. .NET中l(wèi)ambda表達(dá)式合并問題及解決方法2. JSP數(shù)據(jù)交互實(shí)現(xiàn)過程解析3. 淺談python出錯(cuò)時(shí)traceback的解讀4. 利用promise及參數(shù)解構(gòu)封裝ajax請(qǐng)求的方法5. Python importlib動(dòng)態(tài)導(dǎo)入模塊實(shí)現(xiàn)代碼6. python matplotlib:plt.scatter() 大小和顏色參數(shù)詳解7. windows服務(wù)器使用IIS時(shí)thinkphp搜索中文無效問題8. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向9. 在Android中使用WebSocket實(shí)現(xiàn)消息通信的方法詳解10. Nginx+php配置文件及原理解析
