zoukankan      html  css  js  c++  java
  • iview中Tooltip组件和文本溢出结合使用,动态控制tooltip生效

    场景:当给表格列或者列表统一设置文本溢出效果和tooltip提示效果时,有的文本未超长溢出,同样出现了tooltip,不美观。

    思路:通过Tooltip组件的disabled属性动态控制提示效果,通过比较元素的clientWidth和scrollWidth值大小来计算disabled值。

    关于clientWidth、scrollWidth的解释,参考:https://www.dazhuanlan.com/2020/05/06/5eb1da88a1cc5/

    show下代码:

    1.html   

     <List :split="false" class="mt10 ml5 template-list">
              <ListItem v-for="(item,index) in templateList" :key="index">
                <Tooltip :content="item.name" :disabled="disabledCtrArr[index]"> 
                  <div class="content-txt">
                    <span>{{item.name}}</span>
                  </div>
                </Tooltip>
              </ListItem>
      </List>

    2.js

      mounted () {
        this.setDisabledCtrArr()
      },
      methods: {
        setDisabledCtrArr () {
          let arr = Array.from({ length: this.templateList.length }).map((item, index) => {
            let ele = document.getElementsByClassName('content-txt')[index]
            return ele.clientWidth >= ele.scrollWidth //核心代码
          })
          this.disabledCtrArr = arr
        },
    }

    如此,便优雅了起来。看下效果。。。

              

      

    --------学习 交流 提升-----------
  • 相关阅读:
    Tuesday / Wednesday = Increased Response
    脚本语言
    py2exe
    脚本语言
    访问者模式
    C调用lua脚本的效率测试
    Python编码规范
    py2exe
    Python编码规范
    访问者模式
  • 原文地址:https://www.cnblogs.com/blogNYGJ/p/14378124.html
Copyright © 2011-2022 走看看