我的标签内容有2个问题。
1.如何使用我的代码突出显示当前选项卡:
2.我添加了返回false,但是当您单击菜单项时它仍会显示在页面顶部(要查看此内容,请调整查看窗口的大小并单击选项卡。
再次:http://jsfiddle.net/FznTg/2/
真的希望有人可以提供协助。
答案 0 :(得分:1)
答案 1 :(得分:1)
您可以通过将.show()
或新内容放在旧内容的.hide()
之前来解决滚动问题。这样可以防止文档太小而不需要滚动,从而重置滚动位置。
所以,按此顺序排列:
//fix
if (jQuery.browser.msie && jQuery.browser.version.substr(0,3) == "6.0") {
jQuery('.tabcontent#' + stringref).show();
} else {
//display our tab fading it in
jQuery('.tabcontent#' + stringref).fadeIn();
}
//hide the tabs that doesn't match the ID
jQuery('.tabcontent:not(#'+stringref+')').hide();
此处的演示演示:http://jsfiddle.net/jfriend00/E8Jgd/
要设置当前选项卡的样式,您应该只在当前选项卡中添加一个类,然后可以使用CSS设置样式。将此行放在单击处理程序中会将当前选项卡设置为class =“current”,并从任何其他选项卡中删除该类:
jQuery(this).closest("li").addClass("current").siblings().removeClass("current");
然后您可以使用CSS来设置它的样式:
.hometabs li.current a {color:red;}
并且,您可以在默认情况下将该类添加到第一个选项卡的HTML中:
<li class="current"><a href="#tab1">All</a></li>