Если индекс соответствует, то функция не должна работать. И если другой индекс соответствует, то покажите этот индексный элемент и продолжайте, и вот мой код:
HTML
<ul>
<li id="foo">foo</li>
<li id="bar">bar</li>
<li id="baz">baz</li>
</ul>
<div class="a">e</div>
<div class="a">f</div>
<div class="a">g</div>
CSS
.a{display:none;}
JQuery
var t,flag;
$('li').click(function(){
t=$(this).index();
if ($("div.c").eq(t).is(":visible") == true) {
flag=0; //should continue without loading page
}
else {
$('.a').fadeOut();
$('div.a').eq(t).fadeIn();
}
}
Найден пару синтаксических ошибок:
Строка 5: $("div.c"):eq(t).is(":visible")
=> $("div.c").eq(t).is(":visible")
Строка 12: }
=> });
var t, flag;
$('li').click(function () {
t = $(this).index();
if ($("div.c").eq(t).is(":visible")) {
flag = 0; //should continue without loading page
} else {
$('.a').fadeOut();
$('div.a').eq(t).fadeIn();
}
});
РАБОЧАЯ ДЕМО: Я использовал только div.a для тестирования.
измените if ($("div.c"):eq(t).is(":visible") == true) {
to if ($("div.c").eq(t).is(":visible") == true) {