通过单击另一个对象更改显示的<li> </li>

时间:2013-12-03 18:25:40

标签: javascript jquery

我希望通过点击箭头来创建简单的信息板以及更改信息。

代码:

<ul id="wybieraniekamienia">
    <li class="wybranykamien">Wcześniejszy kamień<br>Uruchomienie produkcji modelu<br><br>11.09.2013</li>
    <li class="wybranykamien kamiennumberone">"Zephyr"<br>Uruchomienie produkcji modelu<br><br>11.09.2013</li>
    <li class="wybranykamien">Późniejszy kamień<br>Uruchomienie produkcji modelu<br><br>11.09.2013</li>
</ul>

选择kamiennumberone(默认显示信息),现在点击箭头我想更改next()或prev()的信息。

Jquery的:

$('#strzalkaprawa').click(function(){
    $('.kamiennumberone').toggle();
    $('.kamiennumberone').next(li).toggle();
});

我还试图在隐藏它之前到达下一个对象:

var nextone = $('.kamiennumberone').next(li);
$('.kamiennumberone').toggle();
$(nextone).toggle();

但它不起作用。如果我隐藏它,我怎么能到达下一个目标呢?

1 个答案:

答案 0 :(得分:3)

在这一行:

$('.kamiennumberone').next(li).toggle();

li是变量名。你打算用一个字符串:

$('.kamiennumberone').next('li').toggle();

http://jsfiddle.net/mblase75/RWW5q/


如果您要在整个列表中进行循环播放,则需要使用.toggleClass()代替.toggle()(以及一些额外的代码):

$('#strzalkaprawa').click(function () {
    $a = $('.kamiennumberone').toggleClass('kamiennumberone');
    $b = $a.next('li');
    if (!$b.length) { // we went past the end of the list
        $b = $a.siblings().first();
    }
    $b.toggleClass('kamiennumberone');
});

http://jsfiddle.net/mblase75/6Qru4/