Angular Foundation Modal打开时禁用导航

时间:2014-06-25 19:53:13

标签: angularjs modal-dialog zurb-foundation

当角度基础模态在其上打开时,如何禁用背景中的页面导航。现在当打开模态时,我可以在模态仍然打开的情况下前后翻页。

1 个答案:

答案 0 :(得分:1)

我有同样的问题并以这种方式解决:

焦点问题

当模态打开时:在$modal()上可以设置的选项中,您可以添加作为函数的选项open。在该函数中,您可以将焦点设置在模态的某个元素或模态本身上:

$modal.open({
  //...
  opened : function() {
    $timeout(function() {
      $('#firstModalButton').focus();
    }, 300);
  }
});

我不得不添加超时,因为根据基础页面打开了回调:

  

承诺在下载内容模板并解析所有变量后打开模态时解决

但是我无法在没有超时的情况下添加焦点,在将HTML附加到DOM之前解除了承诺。

导航问题

您应该检查应用程序状态何时发生变化:

$rootScope.$on('$stateChangeSuccess', function() {
  var modal = $modalStack.getTop();
  modal.key.dismiss();
});