Easyui-tree 文本过长,鼠标悬停显示完整的信息

本文介绍了一个使用jQuery实现的树状菜单功能,当鼠标悬停在菜单项上时,如果显示的内容超过指定宽度,则会自动弹出一个提示框显示完整的文本。此功能通过计算节点宽度并判断是否超出容器范围来决定是否显示提示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

js代码:

$('#cTreeList7811q').tree({
  url:strUrl,  // 数据来源地址
  method:'post',
  animate:true,
  onLoadSuccess:function(node,data){
      $('#cTreeList7811q').on('mouseenter','span.tree-title',function(){
//      console.log($(this).text());
        var curZindex=$(this).parents('.window').css('z-index')+100;
        var itemTxt=$(this).text();
        var itemWidth=$(this).width()+4; // 4像素是padding的左右值各2
        var itemLeft=$(this).position().left; // node.text文本相对于父元素偏移多少
        var cTreeWidth=$('#cTreeList7811q').width();

        if((itemWidth+itemLeft)>cTreeWidth){
          if($('body').find('.tip').length!=0){
            $('body').find('.tip').remove();
        }else{
          var html='<div class="tip">'+itemTxt+'</div>';
            $('body').append(html);
            $('.tip').css({'top':$(this).offset().top+15,'left':$(this).offset().left,'z-index':curZindex});
        }            
        }
      });
      
      $('#cTreeList7811q').on('mouseleave','span.tree-title',function(){
        if($('body').find('.tip').length!=0){
        $('body').find('.tip').remove();
          }
      });
  },
  onLoadError:function(){
    showError("读取数据出错");
  }
});
鼠标悬停显示完整Tip是根据弹出窗口的宽度来计算

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值