使用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