jquery - 如何隐藏 Bootstrap 选项卡内容?
问题描述
在我的 Ember 应用程序中,我有一个带有 nav-pills 的 Bootstrap nav,每个都在选项卡内容中显示不同的内容。在单击之前,没有一个是活动的。我想要的是使当前活动的选项卡(和药丸)在再次单击时停用,隐藏所有内容。
<div class="col-sm-9 nav-pills">
<ul class="nav nav-pills">
<li><a class="tab-toggle" data-toggle="pill" href="#special-instructions">Special Instructions</a></li>
<li><a class="tab-toggle" data-toggle="pill" href="#job-details">Job Details</a></li>
<li><a class="tab-toggle" data-toggle="pill" href="#alerts">Alerts</a></li>
<li><a class="tab-toggle" data-toggle="pill" href="#toolbox">Toolbox Talk</a></li>
<li><a class="tab-toggle" data-toggle="pill" href="#load-cell">Load Cell</a></li>
</ul>
</div>
<div class="tab-content job-info">
<div id="special-instructions" class="tab-pane fade in">
<div class="row spacer-mb-1"></div>
Special Instructions
</div>
<div id="job-details" class="tab-pane fade in">
<div class="row spacer-mb-1"></div>
Job Details
</div>
<div id="alerts" class="tab-pane fade in">
<div class="row spacer-mb-1"></div>
Alerts
</div>
<div id="toolbox" class="tab-pane fade in">
<div class="row spacer-mb-1"></div>
Toolbox Talk
</div>
<div id="load-cell" class="tab-pane fade in">
<div class="row spacer-mb-1"></div>
Load Cell
</div>
</div>
我是 Ember 的新手,不知道如何在其中包含 jQuery。我只有一个模板和一条路线。
解决方案
首先,当您使用 ember 时,我强烈建议您不要使用默认的引导 JS 文件!这与 ember 并不能很好地配合使用。但是,ember-bootstrap
它为您提供了一个基于组件的引导功能的 API。
哦,并且jQuery
是 ember 本身的一部分,但是您可以为较新的 ember 版本禁用它。
但是,使用 ember 本身可以很容易地完成一个简单的选项卡导航。特别是如果你使用ember-truth-helpers
!
您可以在标签中使用 simple if
s:
<ul>
<li role="button" onclick={{action 'activate' 'tab1'}}>Tab1</li>
<li role="button" onclick={{action 'activate' 'tab2'}}>Tab2</li>
</ul>
{{#if (eq currentTab 'tab1')}}
<div>
Tab 1
</div>
{{/if}}
{{#if (eq currentTab 'tab2')}}
<div>
Tab 2
</div>
{{/if}}
虽然我通常会做onclick={{action (mut currentTab) 'tab1'}}
激活tab1
,但在这里我使用了一个动作。
这是因为您的特殊功能:
我想要的是使当前活动的选项卡(和药丸)在再次单击时停用,隐藏所有内容。
现在很容易在该操作中实现:
activate(name) {
if(this.currentTab === name) {
this.set('currentTab', '');
} else {
this.set('currentTab', name);
}
}
推荐阅读
- sql - 合并多个列值并根据 id 分组
- javascript - 如何在javascript中与rest运算符一起传递参数?
- ios - iOS 14 ARKit CapturedImage JPEG 转换 HEIC 警告
- nrules - NRules 添加附加条件
- javascript - Nicescroll:我正在使用 jquery nicescroll,但在移动版本中我仍然可以看到原始滚动条
- mysql - MariaDB/MySQL 中的 CTE 中类似 PostgreSQL 的返回修改语句管道/使用
- javascript - 使用 vue.js 创建交互式 svg 地图
- elasticsearch - 在索引的文本字段中查找最常见的术语
- ionic-framework - 离子电容器 WebView:不接受来自根域的 Cookie
- c# - 使用高级 Ocelot 请求聚合时,聚合器得到空响应