zoukankan      html  css  js  c++  java
  • 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;
    }
    });
    }
    });

  • 相关阅读:
    Android 3D滑动菜单完全解析,实现推拉门式的立体特效
    2013年9月25日参加耐特菲姆(北京)玉米滴灌培训小结
    日积月累:ProguardGui进行jar包代码混淆
    CSS3之渐变Gradient
    poj 3182 The Grove
    qrcodeJS生成二维码
    样式优先级
    git流程及操作
    js data日期初始化的5种方法 [转]
    转 jQuery中的$.extend方法来扩展JSON对象
  • 原文地址:https://www.cnblogs.com/huangf714/p/5907983.html
Copyright © 2011-2022 走看看