PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / trunk
Booking for Appointments and Events Calendar – Amelia vtrunk
2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / v3 / src / assets / js / common / scrollElements.js
ameliabooking / v3 / src / assets / js / common Last commit date
appointments.js 5 days ago attendees.js 5 days ago colorManipulation.js 5 days ago customer.js 5 days ago date.js 5 days ago defaultCustomize.js 5 days ago employee.js 5 days ago events.js 5 days ago formFieldsTemplates.js 5 days ago formatting.js 5 days ago helper.js 5 days ago image.js 5 days ago integrationApple.js 5 days ago integrationGoogle.js 5 days ago integrationOutlook.js 5 days ago integrationStripe.js 5 days ago integrationZoom.js 5 days ago licence.js 5 days ago phone.js 5 days ago pricing.js 5 days ago recurring.js 5 days ago responsive.js 5 days ago scrollElements.js 5 days ago settings.js 5 days ago translationsElementPlus.js 5 days ago utilHeaderHeight.js 5 days ago
scrollElements.js
48 lines
1 function useScrollTo(
2 elementContainer,
3 elem,
4 fromTop,
5 duration,
6 nested = {
7 inCollapse: false,
8 },
9 ) {
10 let start = elementContainer.scrollTop,
11 containerTop = elementContainer.offsetTop,
12 to = elem.offsetTop,
13 change = to - (start + containerTop + fromTop),
14 currentTime = 0,
15 increment = 20
16
17 if (nested.inCollapse) {
18 change =
19 to +
20 elem.offsetParent.offsetTop +
21 elem.offsetParent.offsetParent.offsetTop +
22 elem.offsetParent.offsetParent.offsetParent.offsetTop -
23 (start + containerTop + fromTop)
24 }
25
26 let animateScroll = function () {
27 currentTime += increment
28 elementContainer.scrollTop = Math.easeInOutQuad(currentTime, start, change, duration)
29 if (currentTime < duration) {
30 setTimeout(animateScroll, increment)
31 }
32 }
33 animateScroll()
34 }
35
36 //t = current time
37 //b = start value
38 //c = change in value
39 //d = duration
40 Math.easeInOutQuad = function (t, b, c, d) {
41 t /= d / 2
42 if (t < 1) return (c / 2) * t * t + b
43 t--
44 return (-c / 2) * (t * (t - 2) - 1) + b
45 }
46
47 export { useScrollTo }
48