• easyui_extension.js


    $.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' : '700px',
    '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;
    }
    });
    }
    });

  • 相关阅读:
    没有精神分裂的测试不是一个好家长
    防火墙中配置开放 8080端口--续上一篇
    rocketMQ(一)基础环境
    如何做一个对账系统
    通用对账系统介绍与设计(上)
    pdf转图片
    虚拟机加载类机制
    jenkins
    zookeeper和dubbo
    正则日常积累
  • 原文地址:https://www.cnblogs.com/huangf714/p/5907983.html
Copyright © 2020-2023  润新知