Browse Source

Merge pull request #3282 in VISUAL/fineui from DEC/fineui:release/11.0 to master

* commit '7c8064d11aead7e34e173fd9007cb2dabee8e54a':
  BI-119128 fix: 【自适应迭代发散】小屏编辑,高度适应+自定义(1366*449),直接预览,文本控件下拉选项偏离
research/test
Aeolus.Zhang-张敬峥 2 years ago
parent
commit
f2b957b2fe
  1. 19
      src/core/platform/web/dom.js

19
src/core/platform/web/dom.js

@ -416,27 +416,28 @@
};
},
getBottomAdaptPosition: function (combo, popup, extraHeight, needAdaptHeight) {
getBottomAdaptPosition: function (combo, popup, extraHeight, needAdaptHeight, positionRelativeElement) {
var comboBounds = combo.element[0].getBoundingClientRect(),
popupBounds = popup.element[0].getBoundingClientRect(),
windowBounds = BI.Widget._renderEngine.createElement("body").bounds();
viewportBounds = document.documentElement.getBoundingClientRect(),
positionRelativeElementRect = positionRelativeElement.getBoundingClientRect();
if (BI.DOM.isBottomSpaceEnough(combo, popup, extraHeight)) {
return BI.DOM.getBottomPosition(combo, popup, extraHeight);
return BI.DOM.getBottomPosition(combo, popup, extraHeight, positionRelativeElement);
}
if (needAdaptHeight) {
return {
top: comboBounds.top + comboBounds.height + extraHeight,
adaptHeight: windowBounds.height - comboBounds.top - comboBounds.height - extraHeight
top: comboBounds.top + comboBounds.height + extraHeight - positionRelativeElementRect.top,
adaptHeight: viewportBounds.height - comboBounds.top - comboBounds.height - extraHeight
};
}
if (popupBounds.height + extraHeight > windowBounds.height) {
if (popupBounds.height + extraHeight > viewportBounds.height) {
return {
top: extraHeight,
adaptHeight: windowBounds.height - extraHeight
top: extraHeight - positionRelativeElementRect.top,
adaptHeight: viewportBounds.height - extraHeight
};
}
return {
top: windowBounds.height - popupBounds.height - extraHeight
top: viewportBounds.height - popupBounds.height - extraHeight - positionRelativeElementRect.top
};
},

Loading…
Cancel
Save