鼠標懸浮在樹組件節(jié)點上展示當前節(jié)點名稱的三種實現(xiàn)方式
方法一:使用CSS樣式
在樹組件的模板中,為每個節(jié)點的外層元素綁定一個類名,例如"tree-node",并設(shè)置一個自定義屬性來保存節(jié)點名稱。
<el-tree v-if="showCheck" ref="treeRef" :data="treeData" :props="keyProps" :filter-node-method="filterAction" :default-expand-all="expandFlag">
<template v-slot:default="{ node, data }">
<span class="custom-tree-node tree-node" :data-label="node.label">
<el-checkbox-group v-if="!data[keyProps.children]" v-model="checkValue">
<el-checkbox :label="data[keyProps.value]" :disabled="data.disabled" @change="flag => onCheck(flag, data)">
{{ node.label }}
</el-checkbox>
</el-checkbox-group>
<span v-else>
{{ node.label }}
</span>
</span>
</template>
</el-tree>使用CSS樣式來實現(xiàn)鼠標懸浮時顯示節(jié)點名稱的效果。
在CSS樣式中,通過::before偽元素來創(chuàng)建一個內(nèi)容框,然后使用attr(data-label)來獲取節(jié)點名稱,并設(shè)置為內(nèi)容框的內(nèi)容。通過調(diào)整top和left屬性來調(diào)整彈出框的位置。可以根據(jù)需要自定義調(diào)整樣式。
確保將CSS樣式正確應(yīng)用到樹組件的外層容器或適當?shù)母冈厣稀?/p>
:deep(.el-tree) {
.el-tree-node__content {
position: relative;
}
.tree-node:hover::before {
content: attr(data-label); /* 設(shè)置節(jié)點名稱內(nèi)容 */
position: absolute;
top: 26px; /* 調(diào)整彈出框位置 */
left: 40px;
background-color: #fff; /* 彈出框背景色 */
padding: 4px 8px;
border: 1px solid #ccc; /* 彈出框邊框樣式 */
border-radius: 4px;
z-index: 999;
}
}方法二:(在checkBox綁定)
將提示文本保存在節(jié)點數(shù)據(jù)中,然后在el-checkbox元素上使用v-bind:title指令來綁定節(jié)點數(shù)據(jù)中的提示文本。
<el-tree v-if="showCheck" ref="treeRef" :data="treeData" :props="keyProps" :filter-node-method="filterAction" :default-expand-all="expandFlag">
<template v-slot:default="{ node, data }">
<span class="custom-tree-node">
<el-checkbox-group v-if="!data[keyProps.children]" v-model="checkValue">
<el-checkbox :label="data[keyProps.value]" :disabled="data.disabled" @change="flag => onCheck(flag, data)" :title="node.label">
{{ node.label }}
</el-checkbox>
</el-checkbox-group>
<span v-else>
{{ node.label }}
</span>
</span>
</template>
</el-tree>方法三:使用tooltip
<el-tree v-if="showCheck" ref="treeRef" :data="treeData" :props="keyProps" :filter-node-method="filterAction" :default-expand-all="expandFlag">
<template v-slot:default="{ node, data }">
<span class="custom-tree-node">
<el-checkbox-group v-if="!data[keyProps.children]" v-model="checkValue">
<el-checkbox :label="data[keyProps.value]" :disabled="data.disabled" @change="flag => onCheck(flag, data)">
<el-tooltip class="item" effect="dark" :content="node.label" placement="bottom-start" show-after="300">
<template>
<span>{{ node.label }}</span>
</template>
</el-tooltip>
</el-checkbox>
</el-checkbox-group>
<span v-else>
<el-tooltip class="item" effect="dark" :content="node.label" placement="bottom-start" show-after="300">
<template>
<span>{{ node.label }}</span>
</template>
</el-tooltip>
</span>
</span>
</template>
</el-tree>到此這篇關(guān)于鼠標懸浮在樹組件節(jié)點上展示當前節(jié)點名稱的三種實現(xiàn)方式的文章就介紹到這了,更多相關(guān)鼠標懸浮展示當前節(jié)點名稱內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
微信小程序跨頁面?zhèn)鬟fdata數(shù)據(jù)方法解析
這篇文章主要介紹了微信小程序跨頁面?zhèn)鬟fdata數(shù)據(jù)方法解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下2019-12-12
JS highcharts動態(tài)柱狀圖原理及實現(xiàn)
這篇文章主要介紹了JS highcharts動態(tài)柱狀圖原理及實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下2020-10-10
JS?生態(tài)系統(tǒng)加速Polyfill函數(shù)使用實例探索
這篇文章主要介紹了JS?生態(tài)系統(tǒng)加速Polyfill函數(shù)使用實例探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2024-01-01
ajax中g(shù)et和post的說明及使用與區(qū)別
對付亂碼我都是用過濾器做字符編碼過濾的,Get方法過濾器監(jiān)聽不到,所以我一直喜歡使用Post方法,下面對Ajax Get和Post方法做一對比,需要了解的朋友可以 參考下2012-12-12
使用JavaScript實現(xiàn)鏈表的數(shù)據(jù)結(jié)構(gòu)的代碼
鏈表(Linked list)是一種常見的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),是一種線性表,但是并不會按線性的順序存儲數(shù)據(jù),而是在每一個節(jié)點里存到下一個節(jié)點的指針(Pointer) 。下面我們用 JavaScript 代碼對鏈表的數(shù)據(jù)結(jié)構(gòu)進行實現(xiàn)2017-08-08

