Я использую Swiper. js для создания нескольких ползунков на одной странице.
Для программы, которую я пишу, я пытаюсь получить доступ ко второму Swiper на странице и переместить его на определенный слайд. на основании параметров, которые я даю. Я могу получить доступ к первому var mySwiper = document.querySelector('.swiper-container').swiper;
Я попытался получить доступ ко второму swiper через var mySwiper = document.querySelectorAll('.swiper-container')[1].swiper;
Если я консоль журнала mySwiper
, он возвращает то же самое в обоих методах.
Я также пытался использовать var mySwiper = document.querySelector('.swiper-container:nth-child(2)');
, но он вернул null
вместо информации о swiper.
getElementsByClassName
также возвращает правильные значения, но не позволяет выполнять функцию nextSlide()
.
Я хочу использовать mySwiper.slideNext();
на обоих из них, но она работает только на querySelector
, а не на выбранном querySelectorAll
.
Проблема в том, что querySelector является действующим, а querySelectorAll является stati c nodeList. Я могу решить эту проблему, если смогу сделать querySelectorAll живым, однако я не нашел никакой документации по нему.
Мой полный код:
if (condition1) {
var mySwiper = document.querySelector('.swiper-container').swiper;
var swiper = value1;
setSwiper(mySwiper, swiper);
}
else if (condition2){
var swiper = customObject['option2'];
var mySwiper = document.querySelectorAll('.swiper-container')[1].swiper;
setSwiper((mySwiper, swiper));
}
function setSwiper(selected, arg){
if(arg == "B"){
selected.slideNext();
} else if(arg == "C"){
selected.slideNext();
selected.slideNext();
}
}
Функции выполняются без помех.