easyui 1.4.3 窗口创建或拖动超过父元素 边界 BUG 解决方法

使用EASYUI 窗口时,创建或者移动 会超过父元素边界,不能关闭,非常别扭。

风来了.fox

标记:主要这边

就是要注意的地方

/**
 *
 * @param title
 * @param href
 * @param width
 * @param height
 * @param modal
 * @param minimizable
 * @param maximizable
 */
function showMyWindow(title, href, width, height, modal, minimizable, maximizable) {
    var _w_width=$(window).width(),_w_height=$(window).height();console.info(_w_width)
    $('#myWindow').window({
            title: title,
            width: width === undefined ? 600 : (width<=_w_width?width:_w_width),//主要这边
            height: height === undefined ? 400 : (height<=_w_height?height:_w_height),//主要这边
            content: '<iframe scrolling="yes" frameborder="0"  src="'
            + href
            + '" style="width:100%;height:99%;"></iframe>',
            modal: modal === undefined ? true : modal,
            minimizable: minimizable === undefined ? false : minimizable,
            maximizable: maximizable === undefined ? false : maximizable,
            shadow: false,
            cache: false,
            closed: false,
            collapsible: false,
            resizable: false,
            draggable: true,
            loadingMessage: '正在加载数据,请稍等片刻......',
            onMove:function(left, top) {//主要这边
                    var parentObj = $(this).panel('panel').parent();
                    if (left < 0) {
                            $(this).window('move', {
                                    left : 1
                            });
                    }
                    if (top < 0) {
                            $(this).window('move', {
                                    top : 1
                            });
                    }
                    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(parentObj.css("overflow")=="hidden"){
                            if(left > parentWidth-width){
                                    $(this).window('move', {
                                            "left":parentWidth-width
                                    });
                            }
                            if(top > parentHeight-height){
                                    $(this).window('move', {
                                            "top":parentHeight-height
                                    });
                            }
                    }
            }
        });
}

部分来自:http://www.easyui.info/archives/430.html

时间: 2024-10-22 04:49:25

easyui 1.4.3 窗口创建或拖动超过父元素 边界 BUG 解决方法的相关文章

win8.1在运行窗口输入gpedit.msc打不开组策略解决方法

  win8.1在运行窗口输入gpedit.msc打不开组策略解决方法 1.在此需要说明的一点是,对于核心版本的Win8.1系统,并没有提供"组策略编辑"程序.我们可以通过以下方法来查看自己的电脑中是否存在"GPEDIT.MSC"程序: 2.打开"运行"对话框(按Win+R可打开),输入"%SystemRoot% system32"并按回车; 3.进入该目录,查找是否存在"gpedit.msc"文件.如图,

Win8系统在同一个窗口不能打开新文件夹的三种解决方法

  Win8系统同时打开多个文件夹,他们会叠加在同一个窗口.但是有的用户在却不能在同一窗口打开多个文件夹.已经打开一个Win8文件夹的情况下,就不能在同一个窗口打开新的文件夹了,这个时候应该怎么办呢? 方法一: 1.Win+R调出运行 ,输入"regedit"回车或确定打开注册表; 2.然后找到注册表这一项:HKEY_CLASSES_ROOTDirectoryshell 3.将值改为none; 方法二: 1.Win+R调出运行,输入sfc /scannow 让系统自动运行,修复; 2.

“无法创建网站,未指定的错误”错误的解决方法

在Win7系统中使用IE浏览器时,通常情况下都会将自己喜欢的网页添加到收藏夹,也是便后继快捷打开使用.然而在用户打开网页,点击"添加到收藏夹"按钮时,系统却突然弹出了一个"无法创建网站,未指定的错误"的提示窗口.这种状况是由于转移了收藏夹位置,收藏夹对新的文件夹没有完全控制的权限,从而导致添加网址失败的问题,出现收藏夹项目无法查看和刷新的情况,怎么办呢?小编以雨林木风win7旗舰版64位系统为例给大家分享IE无法添加网址到收藏夹简单的解决方案,具体如下: 1.在Wi

在IE下拖动滚动条时border消失的解决方法_经验交流

通常我会用DIV加上border来定义边线,可有时发现在IE下拖动滚动条时border会经常消失,当你刷新时,又会出来.这个问题,我想了很久也没有想出什么原因,所以在些之前用DIV+CSS所写的页面中,这个问题都存在.今天,这个问题,实在太影响最终结果,所在找了一个提示: "以为DIV加上一个高度就能解决."下面传张前后对比图. 至于产生这个问题的原因,我想应该是IE的BUG吧.当你用Mozilla Firefox / Opera 则不会产生这种问题.

JS实现弹出浮动窗口(支持鼠标拖动和关闭)实例详解_javascript技巧

本文实例讲述了JS实现弹出浮动窗口.分享给大家供大家参考.具体如下: 这里介绍的JS弹出浮动窗口,支持鼠标拖动和关闭,点击链接文字后弹出层窗口,也称作是弹出式对话框吧. 关于一些参数说明: bodycontent:要在窗口中显示的内容 title:窗口的标题 removeable:窗口是否能拖动 注意:内容窗体的高度是height-30px,请计算好要显示的内容高度和宽度. 注:在火狐或chrome下效果最佳,IE8下可能有些小问题. 点击此处查看运行效果: http://demo.jb51.n

如何创建可拖动的mc?

如何创建可拖动的mc?下面就来看看利用as 3.0 创建可拖动的mc的一代码,注明本文来自网络. package com.sxl001{   import flash.display.Sprite;   import flash.events.MouseEvent;   public class DragMc extends Sprite {     private var circle:Sprite;     private var begin:Boolean;     private var

应用-windows窗口创建,debug调试出现的问题,release则不会

问题描述 windows窗口创建,debug调试出现的问题,release则不会 #include #include "tchar.h" #include LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { return DefWindowProc(hwnd, message, wParam, lParam); /*switch (message) { case WM_DES

Win7未能创建视频预览请检查设备连接如何解决

1.检查方法,将鼠标放置在桌面中的"我的电脑"上,点击鼠标右键选择"管理"然后找到"服务与应用程序"再找到"服务即"可如下图: 2.如上图,点击"服务"后在右侧显示各类电脑服务项,然后在这些服务项里面找到"Windows Image Acquisition (WIA)"服务,双击鼠标左键,弹出属性信息,如下图: 3.如上图,Windows Image Acquisition (WIA)&

IIS打开提示MMC无法创建管理单元的解决方法_win服务器

安装完IIS后,是否发现管理工具中没有"Internet 信息服务"这项? 没有关系,可以去C:\WINDOWS\system32\inetsrv 中直接点击IIS.msc直接启动. 你可能在启动窗口中发现错误码提示"mmc无法创建管理单元" 你是否"google"了很多网页仍然解决不了问题?那恭喜你又找到了一个解决方法,这个方法是爬树的朱朱成功解决这个故障后写下的.  1,查看c:/windows/temp/是否存在,最好可以给与该目录ever