【问题标题】:how to close angular bootstrap popver on window resize如何在窗口调整大小时关闭角度引导弹出窗口
【发布时间】:2018-04-27 09:09:00
【问题描述】:

我有以下用于弹出框的代码以提供两个选项,但是当我调整页面大小时,我想关闭弹出框

下面是我的弹出框代码

<div class="form col-xs-12 noPad left">
    <h2 class="page-title">Projects
        <span class='icon-settings-big' style='cursor:pointer;float:right;margin-top:-10px;' title='settings' uib-popover-template="dynamicPopoverPageSettings.templateUrl" popover-placement="bottom-right" popover-class="settingsClass"></span>
    </h2>
</div>

【问题讨论】:

  • 你好吗triggering 你的popover

标签: angularjs


【解决方案1】:

我们调整大小绑定:

HTML:

调整属性大小:

<div ng-app="App_Name" ng-controller="App_Controller" resize> </div>

角度:

使用指令:

var app = angular.module('App_Name', []);

function App_Controller($scope) {
    /* some other code */
}

app.directive('resize', function ($window) {
    return function (scope, element) {
        angular.element($window).bind('resize', function () {
            /* close the popover */
        });
    }
})

从技术上讲,您不需要在指令中注入作用域,但您可以像那样访问它。

关闭弹出窗口取决于您的结构。我更喜欢 jquery 的简单方式:$('#POPOVER_ID').popover('hide');

【讨论】:

  • 为什么我看到一个单独的controller
  • @manish 它不是一个控制器,它是一个指令,看这个:stackoverflow.com/questions/18757679/…
  • 那个帖子很好,因为ng-controller="App_Controller" 我不得不问,你不必那样做,你的指令本身可以引用,不需要明确提及。 :)
  • 这是我的控制器 var w = angular.element($window); w.bind('resize', function () { $('.settingsClass').popover('hide'); });
  • 它对我不起作用。不确定我在哪里做错了。
猜你喜欢
  • 2016-10-23
  • 2019-10-22
  • 2013-05-01
  • 2012-05-20
  • 1970-01-01
  • 1970-01-01
  • 2016-06-02
  • 1970-01-01
相关资源
最近更新 更多