Просмотр исходного кода

Merge branch 'fix/dig_position' into 'develop'

Merge of fix/dig_position to develop 修复dialog位置在可视区域内

See merge request o2oa/o2oa!1109
胡起 5 лет назад
Родитель
Сommit
a077aedef6
1 измененных файлов с 14 добавлено и 0 удалено
  1. 14 0
      o2web/source/o2_core/o2/widget/Dialog.js

+ 14 - 0
o2web/source/o2_core/o2/widget/Dialog.js

@@ -453,6 +453,20 @@ o2.widget.Dialog = o2.DL = new Class({
             // //	this.content.setStyle("display", "block");
             // //this.fireEvent("postShow");
 
+			var pn = this.node.getOffsetParent();
+			var p = pn.getPosition();
+
+			var h = this.css.to.height.toInt();
+			var y = this.css.to.top.toInt();
+			y = y+p.y;
+
+			var ih = window.innerHeight.toInt();
+			if (h+y> ih){
+				y = ih-p.y-h-20;
+				if (y<0) y=0;
+				this.css.to.top = ""+y+"px";
+			}
+
 			this.morph.start(this.css.to).chain(function(){
 				if (this.titleText) this.getTitle();
 				if (this.button) this.getButton();