论坛首页 Web前端技术论坛

easyui dialog移动出界面问题

浏览 3304 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2014-07-15  

 

 easyui 弹出新增窗口移动的时候会移动出边界,鼠标在浏览器内是不会移动出边界的,但是当鼠标移动到浏览器边界的时候就会出现变形,然后窗口就跑到右边去了,下面也是同样的情况 ,这个是怎么回事,代码如下:

 

  /**
         * add by cgh
         * 针对panel window dialog三个组件拖动时会超出父级元素的修正
         * 如果父级元素的overflow属性为hidden,则修复上下左右个方向
         * 如果父级元素的overflow属性为非hidden,则只修复上左两个方向
         * @param left
         * @param top
         * @returns
         */
        var easyuiPanelOnMove = function(left, top){
            if ($(this).panel('options').closed)
                return;
            var parentObj = $(this).panel('panel').parent();
            var width = $(this).panel('options').width;
            var height = $(this).panel('options').height;
            var right = left + width;
            var buttom = top + height;
            var parentWidth = parentObj.width();
            var parentHeight = parentObj.height();
           
            if (left < 1) {
                $(this).panel('move', {
                    left: 1
                });
            }
            if (top < 1) {
                $(this).panel('move', {
                    top: 1
                });
            }
            if (parentWidth < right) {
                $(this).panel('move', {
                    left: parentWidth-width
                });
            }
           
            if (parentHeight < buttom) {
                $(this).panel('move', {
                    top: parentHeight-height
                });
            }
        };
$.fn.window.defaults.onMove = easyuiPanelOnMove;
//$.fn.panel.defaults.onMove = easyuiPanelOnMove;
$.fn.dialog.defaults.onMove = easyuiPanelOnMove;

 

论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics