这个.show和.hide在Firefox,Chrome,Safari中很有用,但在IE 7中却不行。在IE中,跨度不会隐藏,它总是显示所有(三个)标签。
我做错了吗?
<script>
var currentTab = 0;
function openTab(clickedTab) {
var thisTab = $(".tabbed-box .tabs a").index(clickedTab);
$(".tabbed-box .tabs li a").removeClass("active");
$(".tabbed-box .tabs li a:eq("+thisTab+")").addClass("active");
$(".tabbed-box .tabbed-content").hide();
$(".tabbed-box .tabbed-content:eq("+thisTab+")").show();
currentTab = thisTab;
}
$(document).ready(function() {
$(".tabs li:eq(0) a").css("border-left", "none");
$(".tabbed-box .tabs li a").click(function() {
openTab($(this)); return false;
});
$(".tabbed-box .tabs li a:eq("+currentTab+")").click();
});
</script>
答案 0 :(得分:0)
span
标记只能包含其他内联元素,但我怀疑您的标签中有块元素。
如果你想深入了解IE7中发生的事情,我认为你会发现span
元素被隐藏得很好,但是浏览器已经尝试纠正无效的HTML代码以便内容选项卡不再位于span
标记内。
如果是这种情况,只需使用div
标签代替span
标签即可解决问题。