EasyUI的doCellTip实现鼠标放到单元格上提示单元格内容


Posted in Javascript onAugust 24, 2016

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></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}); 
}

以上所述是小编给大家介绍的EasyUI的doCellTip实现鼠标放到单元格上提示单元格内容,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript实现省市区三级联动下拉框菜单
Nov 17 Javascript
JavaScript中通过提示框跳转页面的方法
Feb 14 Javascript
jquery.validate表单验证插件使用方法解析
Nov 07 Javascript
微信小程序的动画效果详解
Jan 18 Javascript
Vue结合SignalR实现前后端实时消息同步
Sep 19 Javascript
微信小程序tabBar模板用法实例分析【附demo源码下载】
Nov 28 Javascript
史上最为详细的javascript继承(推荐)
May 18 Javascript
JavaScript基础之this和箭头函数详析
Sep 05 Javascript
vue 如何从单页应用改造成多页应用
Oct 23 Javascript
vue+iview分页组件的封装
Nov 17 Vue.js
利用Vue实现简易播放器的完整代码
Dec 30 Vue.js
Javascript中的奇葩知识,你知道吗?
Jan 25 Javascript
JS实现获取当前URL和来源URL的方法
Aug 24 #Javascript
Bootstrap和Angularjs配合自制弹框的实例代码
Aug 24 #Javascript
总结Javascript中的隐式类型转换
Aug 24 #Javascript
jQuery实现的自适应焦点图效果完整实例
Aug 24 #Javascript
BootStrap+Angularjs+NgDialog实现模式对话框
Aug 24 #Javascript
JS for...in 遍历语句用法实例分析
Aug 24 #Javascript
用JS中split方法实现彩色文字背景效果实例
Aug 24 #Javascript
You might like
深入理解用mysql_fetch_row()以数组的形式返回查询结果
2013/06/05 PHP
windows下配置php5.5开发环境及开发扩展
2014/12/25 PHP
js textarea自动增高并隐藏滚动条
2009/12/16 Javascript
jQuery EasyUI API 中文文档 - MenuButton菜单按钮使用介绍
2011/10/06 Javascript
js判断ie版本号的简单实现代码
2014/03/05 Javascript
js过滤特殊字符输入适合输入、粘贴、拖拽多种情况
2014/03/22 Javascript
如何用jquery控制表格奇偶行及活动行颜色
2014/04/20 Javascript
一个获取第n个元素节点的js函数
2014/09/02 Javascript
Backbone View 之间通信的三种方式
2016/08/09 Javascript
js HTML5多图片上传及预览实例解析(不含前端的文件分割)
2016/08/26 Javascript
jquery插件锦集【推荐】
2016/12/16 Javascript
nodejs中模块定义实例详解
2017/03/18 NodeJs
vue2 自定义动态组件所遇到的问题
2017/06/08 Javascript
Vue路由切换时的左滑和右滑效果示例
2018/05/29 Javascript
记一次Vue.js混入mixin的使用(分权限管理页面)
2019/04/17 Javascript
详解vue 在移动端体验上的优化解决方案
2019/05/20 Javascript
[01:35]辉夜杯战队访谈宣传片—iG.V
2015/12/25 DOTA
[01:10]DOTA2英雄背景故事第四期之混沌法则混沌骑士
2020/07/16 DOTA
pyv8学习python和javascript变量进行交互
2013/12/04 Python
Python常用的内置序列结构(列表、元组、字典)学习笔记
2016/07/08 Python
Python 2与Python 3版本和编码的对比
2017/02/14 Python
python实现随机梯度下降(SGD)
2020/03/24 Python
python 实现对文件夹中的图像连续重命名方法
2018/10/25 Python
python3下载抖音视频的完整代码
2019/06/05 Python
Python3之字节串bytes与字节数组bytearray的使用详解
2019/08/27 Python
python爬虫今日热榜数据到txt文件的源码
2021/02/23 Python
HTML5中input输入框默认提示文字向左向右移动的示例代码
2020/09/10 HTML / CSS
Java程序员面试题
2013/07/15 面试题
科技开发中心办公室主任岗位责任制
2014/02/10 职场文书
求职信结尾怎么写
2014/05/26 职场文书
2014乡镇党政班子四风问题思想汇报
2014/09/14 职场文书
失职检讨书大全
2015/01/26 职场文书
党员承诺书格式范文
2015/04/28 职场文书
世界各国短波电台对东亚播送时间频率表(SW)
2021/06/28 无线电
剖析后OpLog订阅MongoDB的数据变更就没那么难了
2022/02/24 MongoDB
【DOTA2】当街暴打?PSG LGD vs VG - DPC 2022 WINTER TOUR CN
2022/04/02 DOTA