【发布时间】:2018-07-23 06:44:09
【问题描述】:
我正在处理标签
有 5 个标签
关于我们 我们的工作 我们的团队 新闻与事件 联系我们
每个里面都有内容和链接、图片。
每当我点击选项卡内的链接时,我想要在这里实现的目标我们的团队内容,
它应该会打开联系我们标签内容。
这是我目前使用的代码,它使用了一些自定义 js 和 jquery 2.2.0。
请检查代码,我这里没有放 css。
这个例子的直播链接是Live Demo
请帮帮我
// TABS
var tabs = $('.container_tabs');
$('.tabs-content > div', tabs).each(function (i) {
if (i != 0) $(this).hide(0);
});
tabs.on('click', '.tabs a', function (e) {
e.preventDefault();
var tabId = $(this).attr('href');
$('.tabs a', tabs).removeClass();
$(this).addClass('active');
$('.tabs-content > div', tabs).hide(0);
$(tabId).show();
});
// var tabs1 = $('.container_tabs1');
// $('.tabs-content > div', tabs1).each(function (i) {
// if (i != 0) $(this).hide(0);
// });
// tabs1.on('click', '.tabs a', function (e) {
//
// e.preventDefault();
//
// var tabId = $(this).attr('href');
//
//
// $('.tabs a', tabs1).removeClass();
// $(this).addClass('active');
//
// $('.tabs-content > div', tabs1).hide(0);
// $(tabId).show();
//
// });
(function ($) {
jQuery.fn.lightTabs = function (options) {
var createTabs = function () {
tabs = this;
i = 0;
showPage = function (tabs, i) {
$(tabs).children("div").children("div").hide();
$(tabs).children("div").children("div").eq(i).show();
$(tabs).children("ul").children("li").removeClass("active");
$(tabs).children("ul").children("li").eq(i).addClass("active");
};
showPage(tabs, 0);
$(tabs).children("ul").children("li").each(function (index, element) {
$(element).attr("data-page", i);
i++;
});
$(tabs).children("ul").children("li").click(function () {
showPage($(this).parent().parent(), parseInt($(this).attr("data-page")));
});
};
return this.each(createTabs);
};
})(jQuery);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="tabs cw-wrapper">
<ul class="cw-30">
<li class="" data-page="0">About Us</li>
<li data-page="1">Our Work</li>
<li data-page="2">Our Team</li>
<li data-page="3">Our Partners</li>
<li data-page="4" class="active">Work With Us</li>
<li data-page="5">Contact us</li>
</ul>
<div class="cw-70">
<div class="content" style="display: none;">
Content 1
</div>
<div class="content" style="display: none;">
Content 2
</div>
<div class="content" style="display: none;">
Content 3
</div>
<div class="content" style="display: none;">
Content 4
</div>
<div class="content" style="display: none;">
<h3>Contact us Content</h3>
</div>
</div>
</div>
【问题讨论】:
-
所以,基本上,如果我理解你的问题,你只想使用 jquery 打开一个 div,并隐藏所有其他 div?
-
快速查看您的
tabs.on('click',并没有显示任何问题 - 不知道为什么您需要所有看起来非常脆弱的复杂代码lighttabs代码。跨度> -
您能否描述一下您遇到的确切 问题以及您认为您的代码不起作用的原因?到目前为止,您只是说“我正在尝试 A,这是我的代码”。
-
@freedomn-m 检查下面的答案,答案就在那里,但我想要它没有内联点击 javascript。请指导我
-
标签: javascript jquery html css