-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtestimonal.js
68 lines (42 loc) · 1.91 KB
/
testimonal.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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import { isElementValid } from "./static/js/utils.js";
const sideBar = document.querySelector(".testimonal-sidebar");
const closeIcon = document.querySelector(".testimonal-close-icon");
const readMorespinner = document.querySelector(".readmore-spinner");
const ERROR_MSG = "The selector was not found"
function openReadMoreSideBar() {
const readMoreButton = document.querySelector(".read-more-btn");
const WIDTH_SIZE = "60%"
const isREadMoreValid = isElementValid(readMoreButton, ERROR_MSG);
const isSideBarValid = isElementValid(sideBar, ERROR_MSG);
const isCloseIconValid = isElementValid(closeIcon, ERROR_MSG);
const isReadMoreSpinnerValid = isElementValid(readMorespinner, ERROR_MSG)
if (isREadMoreValid && isSideBarValid && isCloseIconValid && isReadMoreSpinnerValid) {
readMoreButton.addEventListener("click", (e) => {
e.preventDefault();
readMorespinner.style.display = "inline-flex";
setTimeout(() => {
sideBar.style.width = WIDTH_SIZE;
closeIcon.style.display = "flex";
checkWindowSize(WIDTH_SIZE);
}, 2000)
})
}
}
function closeTestimonalSideBar() {
const isCloseIconValid = isElementValid(closeIcon, ERROR_MSG);
const isSideBarValid = isElementValid(sideBar, ERROR_MSG);
const animationDuration = 100;
const closeWidth = 0;
if (isCloseIconValid && isSideBarValid) {
closeIcon.classList.toggle("rotateIcon");
closeIcon.addEventListener("click", () => {
setTimeout(() => {
sideBar.style.width = closeWidth;
closeIcon.style.display = "none";
readMorespinner.style.display = "none";
}, animationDuration);
});
}
}
closeTestimonalSideBar();
openReadMoreSideBar();