Задать вопрос
Cheizer
@Cheizer

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

Друзья! гуру 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
  • Вопрос задан
  • 148 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Cheizer
@Cheizer Автор вопроса
Решение
var IDs = [];
$("#pagepiling").find(".section").each(function(){ IDs.push(this.id); });

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

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

Похожие вопросы