Jquery .hide()和.show()不适用于IE7

时间:2011-10-21 06:54:18

标签: jquery internet-explorer-7

这个.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>

1 个答案:

答案 0 :(得分:0)

span标记只能包含其他内联元素,但我怀疑您的标签中有块元素。

如果你想深入了解IE7中发生的事情,我认为你会发现span元素被隐藏得很好,但是浏览器已经尝试纠正无效的HTML代码以便内容选项卡不再位于span标记内。

如果是这种情况,只需使用div标签代替span标签即可解决问题。