From e7d776680b16d61712862df3b025b48cc35b6c24 Mon Sep 17 00:00:00 2001 From: windy <1374721899@qq.com> Date: Thu, 2 Jan 2020 10:40:30 +0800 Subject: [PATCH] =?UTF-8?q?DEC-11654=20fix:=20IE11=E5=A4=9A=E5=B1=82?= =?UTF-8?q?=E7=BA=A7=E5=8D=95=E9=80=89=E4=B8=8B=E6=8B=89=E6=A0=91=E5=B1=95?= =?UTF-8?q?=E5=BC=80=E5=90=8E=E6=BB=9A=E5=8A=A8=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- changelog.md | 1 + .../multilayerselecttree/multilayerselecttree.combo.js | 10 +++++++++- .../multilayerselecttree.trigger.js | 6 ++++++ .../multilayersingletree/multilayersingletree.combo.js | 9 ++++++++- .../multilayersingletree.trigger.js | 6 ++++++ 5 files changed, 30 insertions(+), 2 deletions(-) diff --git a/changelog.md b/changelog.md index 02c590507..251859dd5 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,6 @@ # 更新日志 2.0(2019-12) +- 修复多层级单选下拉树主动设置container后搜索面板弹出问题 - bi.search_editor支持搜索中间含有空格的字符串 - 修复了监听日期下拉框before_popup_view事件,调用setMinDate无效的问题 - 修复了数值滑块逆向排列滑块后populate显示效果不对的问题 diff --git a/src/widget/multilayerselecttree/multilayerselecttree.combo.js b/src/widget/multilayerselecttree/multilayerselecttree.combo.js index 549f3a626..410e4320c 100644 --- a/src/widget/multilayerselecttree/multilayerselecttree.combo.js +++ b/src/widget/multilayerselecttree/multilayerselecttree.combo.js @@ -64,6 +64,7 @@ BI.MultiLayerSelectTreeCombo = BI.inherit(BI.Widget, { return { type: "bi.combo", container: o.container, + destroyWhenHide: o.destroyWhenHide, adjustLength: 2, ref: function (_ref) { self.combo = _ref; @@ -104,6 +105,7 @@ BI.MultiLayerSelectTreeCombo = BI.inherit(BI.Widget, { return { el: { type: "bi.multilayer_select_tree_trigger", + container: o.container, allowInsertValue: o.allowInsertValue, allowSearchValue: o.allowSearchValue, allowEdit: o.allowEdit, @@ -152,8 +154,14 @@ BI.MultiLayerSelectTreeCombo = BI.inherit(BI.Widget, { } }] }, + toggle: !o.allowEdit, hideChecker: function (e) { - return self.triggerBtn.element.find(e.target).length === 0; + // 新增传配置container后对应hideChecker的修改 + // IE11下,popover(position: fixed)下放置下拉控件(position: fixed), 滚动的时候会异常卡顿 + // 通过container参数将popup放置于popover之外解决此问题, 其他下拉控件由于元素少或者有分页,所以 + // 卡顿不明显, 先在此做尝试, 并在FineUI特殊处理待解决文档中标记跟踪 + return (o.container && self.trigger.getSearcher().getView().element.find(e.target).length > 0) ? false : self.triggerBtn.element.find(e.target).length === 0; + }, listeners: [{ eventName: BI.Combo.EVENT_AFTER_HIDEVIEW, diff --git a/src/widget/multilayerselecttree/multilayerselecttree.trigger.js b/src/widget/multilayerselecttree/multilayerselecttree.trigger.js index 67e38591a..b112061f8 100644 --- a/src/widget/multilayerselecttree/multilayerselecttree.trigger.js +++ b/src/widget/multilayerselecttree/multilayerselecttree.trigger.js @@ -30,6 +30,12 @@ BI.MultiLayerSelectTreeTrigger = BI.inherit(BI.Trigger, { ref: function () { self.searcher = this; }, + masker: BI.isNotNull(o.container) ? { + offset: {}, + container: o.container + } : { + offset: {} + }, isAutoSearch: false, el: { type: "bi.state_editor", diff --git a/src/widget/multilayersingletree/multilayersingletree.combo.js b/src/widget/multilayersingletree/multilayersingletree.combo.js index 8b6d145e1..b4218db00 100644 --- a/src/widget/multilayersingletree/multilayersingletree.combo.js +++ b/src/widget/multilayersingletree/multilayersingletree.combo.js @@ -67,6 +67,7 @@ BI.MultiLayerSingleTreeCombo = BI.inherit(BI.Widget, { return { type: "bi.combo", container: o.container, + destroyWhenHide: o.destroyWhenHide, adjustLength: 2, ref: function (_ref) { self.combo = _ref; @@ -107,6 +108,7 @@ BI.MultiLayerSingleTreeCombo = BI.inherit(BI.Widget, { return { el: { type: "bi.multilayer_single_tree_trigger", + container: o.container, allowInsertValue: o.allowInsertValue, allowSearchValue: o.allowSearchValue, allowEdit: o.allowEdit, @@ -155,8 +157,13 @@ BI.MultiLayerSingleTreeCombo = BI.inherit(BI.Widget, { } }] }, + toggle: !o.allowEdit, hideChecker: function (e) { - return self.triggerBtn.element.find(e.target).length === 0; + // 新增传配置container后对应hideChecker的修改 + // IE11下,popover(position: fixed)下放置下拉控件(position: fixed), 滚动的时候会异常卡顿 + // 通过container参数将popup放置于popover之外解决此问题, 其他下拉控件由于元素少或者有分页,所以 + // 卡顿不明显, 先在此做尝试, 并在FineUI特殊处理待解决文档中标记跟踪 + return (o.container && self.trigger.getSearcher().getView().element.find(e.target).length > 0) ? false : self.triggerBtn.element.find(e.target).length === 0 }, listeners: [{ eventName: BI.Combo.EVENT_AFTER_HIDEVIEW, diff --git a/src/widget/multilayersingletree/multilayersingletree.trigger.js b/src/widget/multilayersingletree/multilayersingletree.trigger.js index 514bd7760..c92a1d416 100644 --- a/src/widget/multilayersingletree/multilayersingletree.trigger.js +++ b/src/widget/multilayersingletree/multilayersingletree.trigger.js @@ -30,6 +30,12 @@ BI.MultiLayerSingleTreeTrigger = BI.inherit(BI.Trigger, { ref: function () { self.searcher = this; }, + masker: BI.isNotNull(o.container) ? { + offset: {}, + container: o.container + } : { + offset: {} + }, isAutoSearch: false, el: { type: "bi.state_editor",