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操作)
我就廢話(huà)不多說(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è)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 利用單元測(cè)試對(duì)PHP代碼進(jìn)行檢查2. python如何實(shí)現(xiàn)word批量轉(zhuǎn)HTML3. Java8內(nèi)存模型PermGen Metaspace實(shí)例解析4. python3實(shí)現(xiàn)往mysql中插入datetime類(lèi)型的數(shù)據(jù)5. python excel和yaml文件的讀取封裝6. moment轉(zhuǎn)化時(shí)間戳出現(xiàn)Invalid Date的問(wèn)題及解決7. python爬蟲(chóng)實(shí)戰(zhàn)之制作屬于自己的一個(gè)IP代理模塊8. Django 權(quán)限管理(permissions)與用戶(hù)組(group)詳解9. App啟動(dòng)優(yōu)化-Android性能優(yōu)化10. 詳解docker pull 下來(lái)的鏡像都存到了哪里
