Как собрать массив из блоков и передать его в функцию?

Друзья! гуру JS! Подскажите, есть такой скрип pagepiling.js для прокрутки секций по блокам, типа FullPage js.
Вот он если интересно https://github.com/alvarotrigo/pagePiling.js/

Но речь не совсем о нем, а о JS. В этом скрипте в параметрах есть строка вида anchors: ['page1', 'page2', 'page3'], ручками прописываешь в вызове скрипта, что бы потом на странице работала навигация по секциям
<li><a href="#page1">Page 1</a></li>
<li><a href="#page2">Page 2</a></li>
<li><a href="#page3">Page 3</a></li>


Вызов сам скрипта, происходит в отдельном файле JS, и не хочется его тащить на страницу.
ВНИМАНИЕ ВОПРОС, как пробежаться по всем секциям на странице, и собрать из id их имена, и передать в этот массив в нужном ему виде?

Сейчас пока делаю так, строку массива пишу на странице, все равно ручками
<script>
	var myarray = ['page1', 'page2', 'page3'];
</script>


а в файле JS для вызова в функцию уже так передаю
<code>
	$('#pagepiling').pagepiling({
	    		menu: '#menu',
	    		anchors: myarray,
			});
</code>


Вот поднял, как бы сделать автоматически что бы собирался такой массив из ID параметров секций?
https://codepen.io/Cheizer/pen/dBrQdX
  • Вопрос задан
  • 72 просмотра
Решения вопроса 2
0xD34F
@0xD34F Куратор тега JavaScript
[...document.querySelectorAll('#menu a')].map(n => n.getAttribute('href').slice(1))
Ответ написан
Cheizer
@Cheizer Автор вопроса
Решение
var IDs = [];
$("#pagepiling").find(".section").each(function(){ IDs.push(this.id); });

$('#pagepiling').pagepiling({
	    		menu: '#menu',
	    		anchors: IDs,
			    sectionsColor: ['white', '#ee005a', '#2C3E50'],
			});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Stream Labs Москва
До 150 000 ₽
Myagi Минск
от 3 000 до 4 000 $
Salesbeat Москва
от 150 000 до 250 000 ₽
17 февр. 2020, в 10:07
3000 руб./за проект
17 февр. 2020, в 09:19
5000 руб./за проект