easyUI的doCellTip 就是鼠标放到单元格上有个提示的功能

1:这个东西是我抄的(抄的哪儿的我就想不起来了- -)弹出的窗没有样式  不是很好看

//扩展
    $.extend($.fn.datagrid.methods, {
  /**
   * 开打提示功能
   * @param {} jq
   * @param {} params 提示消息框的样式
   * @return {}
    */
   doCellTip : function(jq, params) {
       function showTip(data, td, e) {
           if ($(td).text() == "")
               return;
           data.tooltip.text($(td).text()).css({
                       top : (e.pageY + 10) + ‘px‘,
                       left : (e.pageX + 20) + ‘px‘,
                       ‘z-index‘ : $.fn.window.defaults.zIndex,
                       display : ‘block‘
                   });
       };
       return jq.each(function() {
           var grid = $(this);
           var options = $(this).data(‘datagrid‘);
           if (!options.tooltip) {
               var panel = grid.datagrid(‘getPanel‘).panel(‘panel‘);
               var defaultCls = {
                   ‘border‘ : ‘1px solid #333‘,
                   ‘padding‘ : ‘1px‘,
                   ‘color‘ : ‘#333‘,
                   ‘background‘ : ‘#f7f5d1‘,
                   ‘position‘ : ‘absolute‘,
                   ‘max-width‘ : ‘200px‘,
                   ‘border-radius‘ : ‘4px‘,
                   ‘-moz-border-radius‘ : ‘4px‘,
                   ‘-webkit-border-radius‘ : ‘4px‘,
                   ‘display‘ : ‘none‘
               }
               var tooltip = $("<div id=‘celltip‘></div>").appendTo(‘body‘);
               tooltip.css($.extend({}, defaultCls, params.cls));
               options.tooltip = tooltip;
               panel.find(‘.datagrid-body‘).each(function() {
                   var delegateEle = $(this).find(‘> div.datagrid-body-inner‘).length
                           ? $(this).find(‘> div.datagrid-body-inner‘)[0]
                           : this;
                   $(delegateEle).undelegate(‘td‘, ‘mouseover‘).undelegate(
                           ‘td‘, ‘mouseout‘).undelegate(‘td‘, ‘mousemove‘)
                           .delegate(‘td‘, {
                               ‘mouseover‘ : function(e) {
                                   if (params.delay) {
                                       if (options.tipDelayTime)
                                           clearTimeout(options.tipDelayTime);
                                       var that = this;
                                       options.tipDelayTime = setTimeout(
                                               function() {
                                                   showTip(options, that, e);
                                               }, params.delay);
                                   } else {
                                       showTip(options, this, e);
                                   }   

                               },
                               ‘mouseout‘ : function(e) {
                                   if (options.tipDelayTime)
                                       clearTimeout(options.tipDelayTime);
                                   options.tooltip.css({
                                               ‘display‘ : ‘none‘
                                           });
                               },
                               ‘mousemove‘ : function(e) {
                                   var that = this;
                                   if (options.tipDelayTime) {
                                       clearTimeout(options.tipDelayTime);
                                       options.tipDelayTime = setTimeout(
                                               function() {
                                                   showTip(options, that, e);
                                               }, params.delay);
                                   } else {
                                       showTip(options, that, e);
                                   }
                               }
                           });
               });   

           }   

       });
   },
   /**
    * 关闭消息提示功能
    * @param {} jq
    * @return {}
    */
   cancelCellTip : function(jq) {
       return jq.each(function() {
                   var data = $(this).data(‘datagrid‘);
                   if (data.tooltip) {
                       data.tooltip.remove();
                       data.tooltip = null;
                        var panel = $(this).datagrid(‘getPanel‘).panel(‘panel‘);
                        panel.find(‘.datagrid-body‘).undelegate(‘td‘,
                                ‘mouseover‘).undelegate(‘td‘, ‘mouseout‘)
                                .undelegate(‘td‘, ‘mousemove‘)
                    }
                    if (data.tipDelayTime) {
                        clearTimeout(data.tipDelayTime);
                        data.tipDelayTime = null;
                    }
                });
    }
}); 调用方法1:function doCellTip(){  

$(‘#dg‘).datagrid(‘doCellTip‘,{‘max-width‘:‘100px‘});

}

function cancelCellTip(){

$(‘#dg‘).datagrid(‘cancelCellTip‘);

}

调用方法2:

onLoadSuccess:function(data){

$(‘#dg‘).datagrid(‘doCellTip‘,{cls:{‘background-color‘:‘red‘},delay:1000});

}


就这么着吧!!!

时间: 2024-10-18 06:41:51

easyUI的doCellTip 就是鼠标放到单元格上有个提示的功能的相关文章

EasyUI DataGrid根据字段动态合并单元格

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="fn" uri=&

[easyui][datagrid]EasyUI DataGrid根据字段动态合并单元格

1.合并方法 /** * EasyUI DataGrid根据字段动态合并单元格 * 参数 tableID 要合并table的id * 参数 colList 要合并的列,用逗号分隔(例如:"name,department,office"); */ function mergeCellsByField(tableID, colList) { var ColArray = colList.split(","); var tTable = $("#" +

CSS+JS鼠标悬停单元格变色

又一款鼠标悬停表格单元格,表格变色的实例效果,运用了CSS和JS两者技术的结合,因些兼容性非常好,而且易于控制,代码修改方便,跟表格读取动态数据没有任何关系,比较方便. <html><head><title>鼠标悬停单元格变色</title><meta http-equiv="content-Type" content="text/html;charset=gb2312"><style type=&q

EasyUi datagrid(onClickCell:用户单击一个单元格时触发 ) 單擊編輯 editor:{type: &#39;combobox&#39;}

1.columns列[一個單元格] 添加combobox下拉選項 $("#userGrid").datagrid({ singleSelect: true,            onClickCell: function (index, field, value) {                //Field = field;                //                var rows = $('#' + UserGrid).datagrid('getRo

[办公应用]如何将excel合并单元格分拆后每个单元格上仍保留数据?

合并单元格虽然美观,但是无法进行排序.筛选等操作. 只有合并单元格拆分后才可以按常规进行统计.但是普通拆分后,excel仅保留合并单元格数据到区域左上角的单元格. 解决方案:选定多个合并单元格,应用本宏即可每个单元格均保留数据:Sub 拆分() Dim c As Range For Each c In ActiveSheet.UsedRange.Cells If c.MergeCells Then c.Select c.UnMerge Selection.Value = c.Value End

纵向文字滚动代码,带上下图片控制的。鼠标放到上下图片上时滚动

<style type="text/css"> #swsh .swsh_body{height:352px;overflow:hidden;}</style></p> <div id="swsh"> <script language="javascript"> var UDMoveflag=true function scrollStart(object,offset){ object.

吴裕雄 Bootstrap 前端框架开发——Bootstrap 表格:将悬停的颜色应用在行或者单元格上

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet

鼠标悬浮在超链接上弹出提示框

鼠标悬浮在超链接上弹出提示框:大家知道超链接有一个title属性,当鼠标放在链接的时候,可以出现一个提示框效果,不过自带的效果虽然廉价但往往并不物美,所以需要自定义一个,下面是一个纯CSS实现的这样的效果,和大家分享一下.代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="h

EXTJS 4.2 实现 gridpanel 鼠标悬停单元格以提示信息的方式显示单元格内容。

由于gridpanel的单元格里的文字太多时候,都由省略号代替,就想实现如题的功能,经过反复实验,终于搞定了!直接上代码: me.on('itemmouseenter', function (view, record, item, index, e, eOpts) { if (view.tip == null) { //这块判断很重要,不能每次都创建个tooltip,要不显示会有问题. view.tip = Ext.create('Ext.tip.ToolTip', { // The overa