单击Handlebars链接关闭Bootstrap的Navbar

时间:2015-06-05 21:51:20

标签: html twitter-bootstrap responsive-design handlebars.js

当用户点击菜单项时,我想自动关闭响应式引导程序导航栏菜单。这些链接由车把制成。我写了这段代码,但它不起作用:

<nav class="navbar navbar-default" role="navigation">
  <div class="container">
    <div class="navbar-header">
        <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="#">Contacts Management</a>
    </div>
      <div id="navbar" class="navbar-collapse collapse">
        <ul class="nav navbar-nav">
          <li>{{#link-to 'index' data-toggle="collapse" data-target=".navbar-collapse"}}Accueil{{/link-to}}</li>
          <li>{{#link-to 'about' data-toggle="collapse" data-target=".navbar-collapse"}}A propos{{/link-to}}</li>
          <li>{{#link-to 'contacts' data-toggle="collapse" data-target=".navbar-collapse"}}Mes contacts{{/link-to}}</li>
        </ul>
      </div>
  </div>
</nav>

如果我使用html标记<a href="#" data-toggle="collapse" data-target=".navbar-collapse">Accueil</a>而不是{{#link-to ...}},它可以使用,但我需要把手标记。

你可以帮帮我吗?有没有javascript的解决方案?

1 个答案:

答案 0 :(得分:1)

好的,我找到了解决方案。我创建了一个视图来绑定数据切换和数据目标属性:

import Ember from 'ember';

export default Ember.View.extend({
});

Ember.LinkView.reopen({
  attributeBindings: ['data-toggle', 'data-target']
});

解决方案是关于Ember.js的说明:http://guides.emberjs.com/v1.10.0/templates/binding-element-attributes/