1

我正在使用带有 html5 模式的 AngularJS,这使我很难使用依赖于使用哈希 URL 来显示/隐藏信息的库,尤其是 Ratchet。

这是一个棘轮模态的示例:

<a href="#myModal" class="button">Open modal</a>

<div id="myModal" class="modal">
  <header class="bar-title">
    <h1 class="title">Modal</h1>
    <a class="button" href="#myModal">
      Close
    </a>
  </header>

  <div class="content content-padded">
    <p>The contents of my modal.</p>
  </div>
</div>

单击“打开模式”会尝试将“#myModal”添加到 URL,但这与 $routeProvider 中的路由不匹配,因此它会重定向到根目录。

关于如何处理这个问题的任何建议?我知道有人发帖说他们在这里使用了带棘轮的角度:“棘轮”与“angular.js”配合得很好吗?但我无法弄清楚。

4

1 回答 1

0

受此SO post 的启发,我使用以下代码解决了此问题:

在模板中,ng-click在打开和关闭按钮中添加指令。

<a class="icon icon-more" ng-click="toggleModal()"></a>

在控制器中:

$scope.toggleModal = function() {
  jQuery('#myModalexample').toggleClass('active');
};

这对我来说可以。

更新

关于这个问题,建议使用数据属性中的 PR 指定模式选择器,data-modal而不是href打开/关闭棘轮模式。

于 2015-03-17T17:21:25.620 回答