Skip to content

Commit b955b0c

Browse files
committed
feat(navigation): new addIcons parameter to add SVG icons to nav buttons
fixes #8088 fixes #8087
1 parent 3cc3e50 commit b955b0c

File tree

2 files changed

+17
-3
lines changed

2 files changed

+17
-3
lines changed

src/modules/navigation/navigation.mjs

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ export default function Navigation({ swiper, extendParams, on, emit }) {
88
navigation: {
99
nextEl: null,
1010
prevEl: null,
11-
11+
addIcons: true,
1212
hideOnClick: false,
1313
disabledClass: 'swiper-button-disabled',
1414
hiddenClass: 'swiper-button-hidden',
@@ -109,8 +109,15 @@ export default function Navigation({ swiper, extendParams, on, emit }) {
109109

110110
const initButton = (el, dir) => {
111111
if (el) {
112-
if (el.matches('.swiper-button-next,.swiper-button-prev') && !el.querySelector('svg')) {
113-
setInnerHTML(el, arrowSvg);
112+
if (
113+
params.addIcons &&
114+
el.matches('.swiper-button-next,.swiper-button-prev') &&
115+
!el.querySelector('svg')
116+
) {
117+
const tempEl = document.createElement('div');
118+
setInnerHTML(tempEl, arrowSvg);
119+
el.appendChild(tempEl.querySelector('svg'));
120+
tempEl.remove();
114121
}
115122
el.addEventListener('click', dir === 'next' ? onNextClick : onPrevClick);
116123
}

src/types/modules/navigation.d.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,13 @@ export interface NavigationOptions {
6868
*/
6969
prevEl?: CSSSelector | HTMLElement | null;
7070

71+
/**
72+
* Boolean property to add SVG icons to navigation buttons
73+
*
74+
* @default true
75+
*/
76+
addIcons?: boolean;
77+
7178
/**
7279
* Toggle navigation buttons visibility after click on Slider's container
7380
*

0 commit comments

Comments
 (0)