只是想给您提供一种替代方案:愿意集成Angular JS和Boostrap 3进行移动开发,我尝试以不同的方式克服了bootstrap.js的集成问题。
与其试图逐个组件地复制bootstrap.js的行为,我基本上制作了两个通用指令,通过事件相互通信以同步两个或多个DOM节点的活动/非活动状态。通过类反映状态,使它们能够再现几乎所有基本的bootstrap.js组件交互。
因此,对于大多数常见应用程序,您只需要bootstap 3 css和这几行js就可以获得几乎所有boostrap 3功能。
您可以在这里获取代码,它将在项目外部工作,您可以根据需求进行调整:
https://github.com/mcasimir/mobile-angular-ui/blob/master/src/coffee/directives/toggle.coffee。
它是Coffeescript编写的,但是您可以通过js2coffee.org轻松将其转换为js。
您还可以阅读这里的文档:
http://mobileangularui.com/#toc6。
以下是一个简单的示例,用于展示其工作原理的基础知识:
<p toggleable id="lightbulb" active-class="text-primary" class="text-default">
<i class="fa fa-lightbulb-o"></i>
</p>
<div class="btn-group justified nav-tabs">
<a toggle="toggle" target="lightbulb" active-class="active" class="btn btn-default" href>
Toggle
</a>
<a toggle="on" target="lightbulb" class="btn btn-default" href>
Turn On
</a>
<a toggle="off" target="lightbulb" class="btn btn-default" href>
Turn Off
</a>
</div>
这就是如何使用它们创建标签组件的方法:
<ul class="nav nav-tabs">
<li><a href="#Tab1" toggle="on" parent-active-class="active">Tab 1</a></li>
<li><a href="#Tab2" toggle="on" parent-active-class="active">Tab 2</a></li>
<li><a href="#Tab3" toggle="on" parent-active-class="active">Tab 3</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane" toggleable active-class="active" default="active" id="Tab1" exclusion-group="myTabs">
<h3 class="page-header">Tab 1</h3>
<p></p>
</div>
<div class="tab-pane" toggleable active-class="active" id="Tab2" exclusion-group="myTabs">
<h3 class="page-header">Tab 2</h3>
<p></p>
</div>
<div class="tab-pane" toggleable active-class="active" id="Tab3" exclusion-group="myTabs">
<h3 class="page-header">Tab 3</h3>
<p></p>
</div>
</div>
作为额外的好处,您还可以从不同的节点上控制相同的标签页:
<div class="btn-group justified nav-tabs">
<a class="btn btn-default" href="#Tab1" toggle="on" active-class="active">Tab 1
</a>
<a class="btn btn-default" href="#Tab2" toggle="on" active-class="active">Tab 2
</a>
<a class="btn btn-default" href="#Tab3" toggle="on" active-class="active">Tab 3
</a>
</div>
不知道这是否符合您的需求,但通过这种方式,您至少可以创建选项卡、手风琴、可折叠内容、模态框和下拉菜单,而无需使用专用库。请注意,它不依赖于Bootstrap标记,因此适用于Bootstrap 2和3。