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