Jquery fadeIn fadeOut список div с активными div - PullRequest
0 голосов
/ 16 декабря 2011

То, что я пытаюсь достичь, это список ссылок с некоторыми отдельными элементами. в данный момент затухание работает, но «скачет по щелчку», и активные значения в <ul id="links"> и #description не работают должным образом. Не могли бы вы помочь мне, пожалуйста?

вот мой пример.:

http://jsfiddle.net/mdamC/100/

Ответы [ 2 ]

0 голосов
/ 16 декабря 2011

H, я предлагаю вам сделать это.

Также изменен с описаний на классы, поскольку идеальный код требует уникальных идентификаторов на страницу

http://jsfiddle.net/mdamC/104/

HTML

<ul id="links">
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
</ul><br/><br/>
<div id="description">
<ul class="descriptions">
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
</ul>
<ul class="descriptions">
    <li>2</li>
    <li>2</li>
    <li>2</li>
    <li>2</li>
    <li>2</li>
</ul>

<ul class="descriptions">
    <li>3</li>
    <li>3</li>
    <li>3</li>
    <li>3</li>
    <li>3</li>
</ul>
<ul class="descriptions">
    <li>4</li>
    <li>4</li>
    <li>4</li>
    <li>4</li>
    <li>4</li>
</ul>
<ul class="descriptions">
    <li>5</li>
    <li>5</li>
    <li>5</li>
    <li>5</li>
    <li>5</li>
</ul></div>

CSS

.active{color:red}

#description{position:relative}
.descriptions{position:absolute; top:0px;}

JS

$("ul#links li").unbind().bind('click', function(e) {
    if (e)
        e.preventDefault();
    $(this).toggleClass('active');
    $("ul.descriptions").fadeOut();

    var index = $(this).index();;
    $("ul.descriptions").eq(index).fadeIn();

    if (!e) e = window.event;
    e.cancelBubble = true;
    if (e.stopPropagation) e.stopPropagation();
}, function(e) {
    $("ul.descriptions").stop().fadeOut();
});



$("ul.descriptions").hide();
if ($(this).next().is(':hidden')) {
    $(this).next().removeClass('active');
}

$('ul#links li').click(function(e) {
    e.preventDefault();
    $('ul#links li').removeClass('active');
    $(this).addClass('active');
});
0 голосов
/ 16 декабря 2011

здесь вы идете

http://jsfiddle.net/mdamC/102/

...