прыгать на вершину div после раскрытия

0

У меня есть следующий код

<ul id="menu">
    <li class="newsPara">
    Initial copy here   
    <a href="#" class="readmore">Read more&raquo; </a>
        <ul class="accordianUl" style="display: none">
            <li>
            content hidden here
            </li>
        </ul>
    </li>
</ul>

когда пользователь нажимает на read больше, расширение sub ul расширяется. используя следующий код

$('#menu li a').click(function () {
    $('#menu li a').show();
    $(this).hide();
    var checkElement = $(this).next('ul');
    if (checkElement.is(':visible')) {
        return false;
    }
    if (!checkElement.is(':visible')) {
        $('#menu ul:visible').slideUp('normal');
        checkElement.slideDown('normal');
        $('html, body').animate({ scrollTop: $(this).parent('.accordianUl').position().top }, 'slow'); 
        return false;
    }
});

Я хочу, чтобы sub ul расширился, чтобы перейти на вершину.

$('html, body').animate({ scrollTop: $(this).parent('.accordianUl').position().top }, 'slow'); 

но он, похоже, не работает

может кто-нибудь помочь

благодаря

Теги:

1 ответ

0

ваш $(this).parent() возвращает null, так как он не получил в нем accordianUl. $ (this) относится к текущему элементу, вызывающему функцию, см. эту скрипту:

http://jsfiddle.net/jFIT/wfeWW/

$('#menu li a').click(function () {
  $('#menu li a').show();
  $(this).hide();
  $this = $(this);     //KEEP THAT ELEMENT JUST INCASE
  console.log($this);    //IT IS THE LI > A
  var checkElement = $(this).next('ul');
  if (checkElement.is(':visible')) {
    return false;
  }
  if (!checkElement.is(':visible')) {
    $('#menu ul:visible').slideUp('normal');
    checkElement.slideDown('normal');
    $('html, body').animate({ scrollTop: checkElement.position().top }, 'slow'); 
    return false;
  }
});
  • 0
    Жаль что не работает
  • 0
    Эй, можете ли вы предоставить более подробную информацию, чем "это не работает"? отлично работает в скрипке: jsfiddle.net/jFIT/wfeWW
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню