-
Notifications
You must be signed in to change notification settings - Fork 38
/
Copy pathslide-elastic.js
36 lines (31 loc) · 1.06 KB
/
slide-elastic.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
(function(){
var slidesEl, minWidth, minHeight;
var resize = function() {
if (window.innerWidth < minWidth || window.innerHeight < minHeight) {
var sx = window.innerWidth / minWidth;
var sy = window.innerHeight / minHeight;
var transform = 'scale(' + Math.min(sx, sy) + ')';
} else {
var transform = 'none';
}
slidesEl.style.MozTransform = transform;
slidesEl.style.WebkitTransform = transform;
slidesEl.style.OTransform = transform;
slidesEl.style.msTransform = transform;
slidesEl.style.transform = transform;
}
var onLoad = function (list) {
if (document.readyState === 'complete') {
list();
} else {
window.addEventListener('load', list);
}
}
onLoad(function() {
slidesEl = document.getElementsByTagName('slides')[0];
minWidth = slidesEl.offsetWidth;
minHeight = slidesEl.offsetHeight;
resize();
window.addEventListener('resize', resize);
})
})();