Skip to content

Commit d7c0b2e

Browse files
authored
Merge pull request #735 from meandmax/benmerckx-master
Add trigger commit to fix from @benmerckx
2 parents ced88f1 + 37da719 commit d7c0b2e

8 files changed

Lines changed: 94 additions & 100 deletions

File tree

dist/jquery.lory.js

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,13 @@ function lory(slider, opts) {
242242
}
243243
}
244244

245+
/**
246+
* returns an element's width
247+
*/
248+
function elementWidth(element) {
249+
return element.getBoundingClientRect().width || element.offsetWidth;
250+
}
251+
245252
/**
246253
* slidefunction called by prev, next & touchend
247254
*
@@ -448,12 +455,12 @@ function lory(slider, opts) {
448455
initialIndex = _options5.initialIndex;
449456

450457

451-
slidesWidth = slideContainer.getBoundingClientRect().width || slideContainer.offsetWidth;
452-
frameWidth = frame.getBoundingClientRect().width || frame.offsetWidth;
458+
slidesWidth = elementWidth(slideContainer);
459+
frameWidth = elementWidth(frame);
453460

454461
if (frameWidth === slidesWidth) {
455462
slidesWidth = slides.reduce(function (previousValue, slide) {
456-
return previousValue + slide.getBoundingClientRect().width || slide.offsetWidth;
463+
return previousValue + elementWidth(slide);
457464
}, 0);
458465
}
459466

@@ -687,11 +694,13 @@ function lory(slider, opts) {
687694
}
688695

689696
function onResize(event) {
690-
reset();
697+
if (frameWidth !== elementWidth(frame)) {
698+
reset();
691699

692-
dispatchSliderEvent('on', 'resize', {
693-
event: event
694-
});
700+
dispatchSliderEvent('on', 'resize', {
701+
event: event
702+
});
703+
}
695704
}
696705

697706
// trigger initial setup

dist/jquery.lory.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/jquery.lory.min.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/lory.js

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,13 @@ function lory(slider, opts) {
242242
}
243243
}
244244

245+
/**
246+
* returns an element's width
247+
*/
248+
function elementWidth(element) {
249+
return element.getBoundingClientRect().width || element.offsetWidth;
250+
}
251+
245252
/**
246253
* slidefunction called by prev, next & touchend
247254
*
@@ -448,12 +455,12 @@ function lory(slider, opts) {
448455
initialIndex = _options5.initialIndex;
449456

450457

451-
slidesWidth = slideContainer.getBoundingClientRect().width || slideContainer.offsetWidth;
452-
frameWidth = frame.getBoundingClientRect().width || frame.offsetWidth;
458+
slidesWidth = elementWidth(slideContainer);
459+
frameWidth = elementWidth(frame);
453460

454461
if (frameWidth === slidesWidth) {
455462
slidesWidth = slides.reduce(function (previousValue, slide) {
456-
return previousValue + slide.getBoundingClientRect().width || slide.offsetWidth;
463+
return previousValue + elementWidth(slide);
457464
}, 0);
458465
}
459466

@@ -687,11 +694,13 @@ function lory(slider, opts) {
687694
}
688695

689696
function onResize(event) {
690-
reset();
697+
if (frameWidth !== elementWidth(frame)) {
698+
reset();
691699

692-
dispatchSliderEvent('on', 'resize', {
693-
event: event
694-
});
700+
dispatchSliderEvent('on', 'resize', {
701+
event: event
702+
});
703+
}
695704
}
696705

697706
// trigger initial setup

dist/lory.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/lory.min.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/lory.js

100644100755
Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,13 @@ export function lory (slider, opts) {
111111
}
112112
}
113113

114+
/**
115+
* returns an element's width
116+
*/
117+
function elementWidth (element) {
118+
return element.getBoundingClientRect().width || element.offsetWidth;
119+
}
120+
114121
/**
115122
* slidefunction called by prev, next & touchend
116123
*
@@ -311,14 +318,12 @@ export function lory (slider, opts) {
311318
function reset () {
312319
var {infinite, ease, rewindSpeed, rewindOnResize, classNameActiveSlide, initialIndex} = options;
313320

314-
slidesWidth = slideContainer.getBoundingClientRect()
315-
.width || slideContainer.offsetWidth;
316-
frameWidth = frame.getBoundingClientRect()
317-
.width || frame.offsetWidth;
321+
slidesWidth = elementWidth(slideContainer);
322+
frameWidth = elementWidth(frame);
318323

319324
if (frameWidth === slidesWidth) {
320325
slidesWidth = slides.reduce(function (previousValue, slide) {
321-
return previousValue + slide.getBoundingClientRect().width || slide.offsetWidth;
326+
return previousValue + elementWidth(slide);
322327
}, 0);
323328
}
324329

@@ -549,11 +554,13 @@ export function lory (slider, opts) {
549554
}
550555

551556
function onResize (event) {
552-
reset();
557+
if (frameWidth !== elementWidth(frame)) {
558+
reset();
553559

554-
dispatchSliderEvent('on', 'resize', {
555-
event
556-
});
560+
dispatchSliderEvent('on', 'resize', {
561+
event
562+
});
563+
}
557564
}
558565

559566
// trigger initial setup

0 commit comments

Comments
 (0)