#jquery #internet-explorer-7
#jquery #internet-explorer-7
Вопрос:
Это .показать и скрыть отлично работает в 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. Можете ли вы показать запущенный код, например, в jsfiddle? Или, по крайней мере, опубликуйте HTML.
Ответ №1:
span
Тег может содержать только другие встроенные элементы, но я подозреваю, что у вас есть блочные элементы внутри ваших вкладок.
Если вы углубитесь в то, что происходит в IE7, я думаю, вы обнаружите, что span
элементы скрыты просто отлично, но браузер предпринял попытку исправить недопустимый HTML-код, чтобы содержимое вкладок больше не находилось внутри span
тегов.
Если это так, простое использование div
тегов вместо span
тегов для вкладок решит проблему.