如何滚动md-dialog面板而不关闭它?

问题描述 投票:0回答:2

嗨,我正在使用角度材料md-dialog manel。

    $mdDialog.show({
            templateUrl: 'rt.tmpl.html',
            parent: angular.element(document.body),
            controller: 'SomeController',
            controllerAs: 'vm',
            targetEvent: event,
            clickOutsideToClose: true,
            multiple: true,
            fullscreen: self.isCustomFullscreen      
        })

如你所见,我使用clickOutsideToClose:true(我需要它)。但我同时右边有一个滚动条(见图)。问题是,当我点击滚动时,面板关闭..如何避免它?

enter image description here

提前致谢!!!:)))

angularjs angular-material
2个回答
0
投票

这似乎基本上是一个CSS问题。默认情况下,对话框的最大高度和最大宽度分别为90vh和90vw。因此,如果您的内容溢出对话框的高度,则滚动条应显示在对话框内,而不是窗口中。

尝试将md-dialog-content的高度设置为90vh减去md-dialog-toolbar和md-dialog-actions的高度:

md-dialog-content {
  max-height: calc(90vh - $mdDialogToolbarHeight - $mdDialogActionsHeight);
}

0
投票

我修好了

   clickOutsideToClose: false,

并将监听器应用于md-dialog parent:

 var dialogContainerEl =  document.getElementsByClassName("md-dialog-container")[0];

            dialogContainerEl.addEventListener("click", function (event) {
                hidePanel();
            });

它现在工作正常。多谢你们!

© www.soinside.com 2019 - 2024. All rights reserved.