0

我想淡出特定类的上一个和下一个类,为什么我的代码不起作用?你知道解决办法吗?

注意:如何指定#homebut 的前一个是#aboutus,#aboutus 的下一个是#homebut?

非常感谢您的帮助!

这是我的 html 代码:

<body>
    <div class="menuEintraege" id="2">
      <li class="current"><a href="home.html" id="homebut">home</a></li>
        <li><a href="apps.html"id="appsbut">apps</a></li>
        <li><a href="hedone.html" id="hedonebut">hedone</a></li>
        <li><a href="contact.html" id="contactbut">contact</a></li>
        <li><a href="aboutus.html" id="aboutusbut">about us</a></li>
    </div>
</body>

这是我的 javascript 到现在:

$("a").click(function() {
    $(this).prev("li").fadeOut("fast");
    $(this).next("li").fadeOut("fast");
}
4

2 回答 2

1
$("a").click(function() {
    $(this).parent().prev("li").fadeOut("fast");
    $(this).parent().next("li").fadeOut("fast");
}
于 2012-09-06T11:17:29.270 回答
1

我的第一个想法是:

$('li a:first').addClass('active');

$('button').click(function(e) {
    e.preventDefault();
    var that = this,
        $that = $(that),
        aEls = $('.menuEintraege a'),
        aActive = $('.menuEintraege a.active')
        .closest('li')
        .index();
    if (that.id == 'pre') {
        $('.active').removeClass('active');
        var pre = aEls.eq(aActive - 1);
        var prev = pre.length ? pre : aEls.last();
        prev.addClass('active');
    }
    else if (that.id == 'nxt') {
        $('.active').removeClass('active');
        var pre = aEls.eq(aActive + 1);
        var prev = pre.length ? pre : aEls.first();
        prev.addClass('active');
    }
});​

JS 小提琴演示

于 2012-09-06T11:29:40.757 回答