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

Друзья! гуру 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
  • Вопрос задан
  • 67 просмотров
Решения вопроса 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'],
			});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
от 30 000 до 65 000 руб.
от 60 000 до 90 000 руб.
BSSL Москва
от 50 000 до 150 000 руб.
21 июл. 2019, в 18:03
1000 руб./за проект
21 июл. 2019, в 17:53
3000 руб./за проект
21 июл. 2019, в 16:20
10000 руб./за проект