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 相关文章推荐
基于jquery的一行代码轻松实现拖动效果
Dec 28 Javascript
JS delegate与live浅析
Dec 21 Javascript
javascript函数定义的几种区别小结
Jan 06 Javascript
jQuery 滑动方法slideDown向下滑动元素
Jan 16 Javascript
JQuery中serialize() 序列化
Mar 13 Javascript
老司机带你解读jQuery插件开发流程
May 16 Javascript
解析ajaxFileUpload 异步上传文件简单使用
Dec 30 Javascript
详解如何在Angular中快速定位DOM元素
May 17 Javascript
react 父组件与子组件之间的值传递的方法
Sep 14 Javascript
对Vue- 动态元素属性及v-bind和v-model的区别详解
Aug 27 Javascript
JavaScript中0、空字符串、'0'是true还是false的知识点分享
Sep 16 Javascript
浅析 Vue 3.0 的组装式 API(一)
Aug 31 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
3.从实例开始
2006/10/09 PHP
信用卡效验程序
2006/10/09 PHP
php版小黄鸡simsimi聊天机器人接口分享
2014/01/26 PHP
php获取Google机器人访问足迹的方法
2015/04/15 PHP
PHP读取汉字的点阵数据
2015/06/22 PHP
PHP面向对象学习之parent::关键字
2017/01/18 PHP
tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析
2020/02/11 PHP
js实现页面打印功能实例代码(附去页眉页脚功能代码)
2009/12/15 Javascript
你的 mixin 真的兼容 ECMAScript 5 吗?
2013/04/11 Javascript
js、css、img等浏览器缓存问题的2种解决方案
2013/10/23 Javascript
JavaScript1.6数组新特性介绍以及JQuery的几个工具方法
2013/12/06 Javascript
当前流行的JavaScript代码风格指南
2014/09/10 Javascript
JavaScript中数组去除重复的三种方法
2016/04/22 Javascript
详解jQuery中的deferred对象的使用(一)
2016/05/27 Javascript
全面了解javascript三元运算符
2016/06/27 Javascript
jQuery EasyUI Tab 选项卡问题小结
2016/08/16 Javascript
如何使用bootstrap框架 bootstrap入门必看!
2017/04/13 Javascript
javascript将list转换成树状结构的实例
2017/09/08 Javascript
AngularJS 中的数据源的循环输出
2017/10/12 Javascript
Vue数据监听方法watch的使用
2018/03/28 Javascript
JS实现的倒计时恢复按钮点击功能【可用于协议阅读倒计时】
2018/04/19 Javascript
layui前端时间戳转化实例
2019/11/15 Javascript
常用python数据类型转换函数总结
2014/03/11 Python
Django中实现一个高性能计数器(Counter)实例
2014/07/09 Python
python获取指定网页上所有超链接的方法
2015/04/04 Python
Python中functools模块函数解析
2017/03/12 Python
python中文乱码不着急,先看懂字节和字符
2017/12/20 Python
pandas数据预处理之dataframe的groupby操作方法
2018/04/13 Python
Keras实现DenseNet结构操作
2020/07/06 Python
如何利用python发送邮件
2020/09/26 Python
使用phonegap进行提示操作的具体方法
2017/03/30 HTML / CSS
怎么样写好简历中的自我评价
2013/10/25 职场文书
司法建议书范文
2014/05/13 职场文书
建筑工地宣传标语
2014/06/18 职场文书
放飞梦想演讲稿200字
2014/08/26 职场文书
Mysql Show Profile
2021/04/05 MySQL