使用纯javascript而非jquery使所选选项卡处于活动状态并保持非活动状态
Make the selected tab active and remaining inactive using pure javascript not jquery
如果有动态选项卡,可能有'n'个选项卡能够在单击时捕获选项卡,并将其背景色更改为绿色。但当我选择另一个选项卡时,之前单击的选项卡也保持为绿色,但非活动选项卡应为白色背景。
您可以先取消设置所有选项卡的背景,然后将背景颜色添加到所选选项卡中,如下所示:
function showActiveTab(item)
{
var el = document.getElementsByTagName("LI");
// Unset background color of all tabs to white
for (var i = 0, len = el.length; i < len; i++) {
el[i].style.background="white";
}
// Add background color of selected tab to green
item.style.background="green";
}
跟踪哪个选项卡处于活动状态,并在其更改时将背景设置为白色(或您喜欢的任何颜色)。
var activeTab = null;
function showActiveTab(item)
{
if (null != activeTab) {
activeTab.style.background="white";
}
item.style.background="green";
activeTab = item;
}
对clickTabEvent进行小的更改,以删除您用于处理所有点击处理程序中引用的本地item
的匿名方法调用
function clickTabEvent()
{
var el = document.getElementsByTagName("LI");
for (var i = 0, len = el.length; i < len; i++) {
var item = el[i];
if (item.id && (item.id.indexOf("tab_")!=-1)) {
item.addEventListener('click',
function() {
showTabPanel(this);
showActiveTab(this);
}
);
}
}
}
相关文章:
- 使用纯javascript而非jquery使所选选项卡处于活动状态并保持非活动状态
- 我如何为列出的选项卡元素编写一个Protractor测试,它会检查它是否's是否处于活动状态
- Angular+bootstrap ui,检查当前选项卡是否已处于活动状态
- 单击我网站中的链接时打开新选项卡,保持当前选项卡处于活动状态
- JQuery UI 1.11 将选项卡设置为活动状态
- 页面刷新后,所选选项卡处于非活动状态
- 使第二个选项卡处于第一个活动状态
- 使选项卡处于活动/非活动状态未显示正确的数据
- 当选项卡处于活动状态时,更改子(孙)类
- Angularjs :动态创建的选项卡不会处于活动状态/选中状态
- 在加载新页面时保持选项卡永久处于活动状态
- Boostrap和Angular:同时保持两个选项卡处于活动状态
- 画布的奇怪行为 上下文变量定义位置导致选项卡处于非活动状态时画布呈现冻结
- 将焦点设置在带有错误消息的第一个输入元素上,并将包含它的 TabStrip 选项卡设置为活动状态
- 检测浏览器选项卡是否处于活动状态或用户是否已切换
- 检查选项卡是否打开为活动状态
- 仅在选项卡处于活动状态时加载数据
- 仅在选项卡处于活动状态时运行内容脚本循环
- 仅当选项卡未处于活动状态时触发某些内容
- 如何在页面重新加载后使用 Twitter 引导程序保持当前选项卡处于活动状态