Мне нужно вызвать одну и ту же функцию отдельно для отдельных элементов HTML. В частности, этот репозиторий (сейчас в архиве, иначе я бы спросил там). Она собирает все элементы класса/рисунка, чтобы поместить их в одну галерею PhotoSwipe, что мне и нужно, но мне также нужно иметь несколько отдельных галерей на одной странице, но эта библиотека собирает все изображения и помещает их всех в каждую галерею. По этой же причине я не могу, скажем, разделить изображения каждой галереи по классам и передать их все в массив, поскольку в конечном итоге все они оказываются вместе.
Решение, которое я нашел Я пришел к выводу, что это работает, - это несколько раз вызывать функцию для каждого класса галереи, то есть:
Код: Выделить всё
initPhotoSwipeFromDOM('.images-container01nnb figure');
initPhotoSwipeFromDOM('.images-container02nnc figure');
initPhotoSwipeFromDOM('.images-container03rv figure');
Но, несмотря на это, я все равно считаю это уродливым, неэлегантным и повторяющимся кодом. Кроме того, я не уверен с точки зрения производительности, является ли это особенно неэффективным или не следует делать таким образом? В любом случае, наверняка должен быть лучший, более чистый и элегантный способ вызова одной и той же функции отдельно в отдельных классах HTML?
Подробнее здесь:
https://stackoverflow.com/questions/793 ... nt-classes