jquery удалить последний созданный элемент - PullRequest
0 голосов
/ 18 февраля 2010

Мне нужна помощь с удалением некоторых элементов с моей страницы с помощью jQuery, в настоящее время у меня есть цикл PHP, который строит ссылки,

    <?php
    $findMore = array();
    $i = 0;
    foreach ($backgrounds as $row) :
?>
    <a id="<?=$i;?>" class="findOutMore" href="<?=$row['backgroundAddress']; ?>">Find Out More</a>
<?php
    $i++;
    endforeach;
?>

При этом создаются ссылки, которые не отображают ни одной, и затем каждый раз, когда релевантная ссылка меняет некоторую часть где-то еще в HTML, тогда новая ссылка отображается с использованием этого кода,

function setCurrent(i){
    i = parseInt(i)+1;
    $("li", "#" + options.numericId).removeClass("current");
    $("li#" + options.numericId + i).addClass("current");
    var rel = $('ol#controls li.current a').attr('rel');
    if($('a#'+rel).hasClass('findOutMore')) {
        $('a#'+rel).css({
            display:'block',
        })
    }
};

Таким образом, каждый раз, когда изменяется, я получаю новую ссылку на странице, но мне нужна предыдущая ссылка, чтобы исчезнуть? Возможно ли это и как?

Ответы [ 2 ]

1 голос
/ 18 февраля 2010

Я не совсем уверен, что понял ваш вопрос, но если вы хотите, чтобы одновременно отображалась только одна ссылка с классом 'findOutMore', я бы сделал следующее (только в конце вашего кода):

var rel = $('ol#controls li.current a').attr('rel');
if($('a#'+rel).hasClass('findOutMore')) {
    $('a.findOutMore:visible').hide();
    $('a#'+rel).show();
}
1 голос
/ 18 февраля 2010

Вы можете позвонить

$(".findOutMore").hide();

, прежде чем показывать новую ссылку.Идея состоит в том, что все представляющие интерес ссылки имеют один и тот же класс, поэтому их легко скрыть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...