tangyuxian
文章84
标签38
分类5

文章分类

文章归档

UI库-ElTooltip只在文字超出范围时显示的视线方式

UI库-ElTooltip只在文字超出范围时显示的视线方式

ElTooltip只在文字超出范围时显示的视线方式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<template>
  <el-tooltip
      effect="light"
      :content="item.name"
      placement="top"
      :disabled="!item.isShowTooltip"
      :offset="6"
      popper-class="table-tooltip"
  >
    <div @mouseenter="isShowTooltipVisibilityChange($event,item,'isShowTooltip')" class="sle">
      <span>{{item.name}}</span>
    </div>
  </el-tooltip>
</template>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

<template>
  <el-tooltip
      effect="light"
      :content="userStore.userInfo.name"
      placement="top"
      :disabled="!isShowTooltip"
      :offset="6"
      popper-class="table-tooltip"
  >
    <div @mouseenter="($event)=>isShowTooltip = isShowTooltipVisibilityChange($event)"
         class="text-align-center  sle w-full sle">
      <span>名称:{{ userStore.userInfo.name }}</span>
    </div>
  </el-tooltip>
</template>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/**
 * 是否显示
 * @param event $event
 * @param row 当前数据
 * @param prop 修改显示的字段名
 * 使用方式 @mouseenter="isShowTooltipVisibilityChange($event,item)"
 * @return boolean
 */
export function isShowTooltipVisibilityChange(
  event: any,
  row: any = null,
  prop: string = "isShowTooltip"
) {
  const ev = event.target;
  const evWeight = ev.scrollWidth;
  const contentWeight = ev.clientWidth;
  const isShowTooltip = evWeight > contentWeight;
  if (row) row[prop] = isShowTooltip;
  return isShowTooltip;
}
本文作者:tangyuxian
本文链接:https://www.tangyuxian.com/2025/06/04/%E5%89%8D%E7%AB%AF/UI%E5%BA%93/UI%E5%BA%93-ElTooltip%E5%8F%AA%E5%9C%A8%E6%96%87%E5%AD%97%E8%B6%85%E5%87%BA%E8%8C%83%E5%9B%B4%E6%97%B6%E6%98%BE%E7%A4%BA%E7%9A%84%E8%A7%86%E7%BA%BF%E6%96%B9%E5%BC%8F/
版权声明:本文采用 CC BY-NC-SA 3.0 CN 协议进行许可