Страницы

Поиск по вопросам

вторник, 22 января 2019 г.

Посчитать количество элементов в jquery?

Мне нужно считать количество блоков в блоке с классом .blocks и в зависимости от их количества, создать столько же ссылок на эти элементы. Каждая ссылка будет скролить к соответствующему элементу.
Подскажите пожалуйста, как можно это реализовать? Буду очень благодарен.

1
2
3


Ответ

$('.blocks .section').each(function(index, element){ $(this).attr('data-block', index); $('.navigation').append('

  • Блок '+$(element).html()+'
  • ') }); $(document).on('click', '.navigation .scrollto', function(){ var block_id = $(this).attr('data-block'), block = $('[data-block="'+block_id+'"]:not(.scrollto)'); if (block.offset() !== undefined){ $('html, body').animate({ scrollTop: block.offset().top }, 1000, 'swing', function(){ // здесь код если надо что-то делать после прокрутки }); } return false; });
    1
    2
    3

    В данном случае не обязательно подсчитывать. Достаточно просто для каждого блока вставлять ссылку, т.е.
    $('.blocks .section').each(function(index, element){ $('.navigation').append('
  • Блок '+$(element).html()+'
  • ') });

    Комментариев нет:

    Отправить комментарий