|
@@ -0,0 +1,121 @@
|
|
|
+'use strict'
|
|
|
+var body = document.querySelector("body");
|
|
|
+var slider = document.querySelector(".slider");
|
|
|
+var slides = document.querySelector(".slides");
|
|
|
+var bodyWidth = +getComputedStyle(body).width.replace("px","");
|
|
|
+var arrowLeft = document.getElementById("arrow-left");
|
|
|
+var arrowRight = document.getElementById("arrow-right");
|
|
|
+var slideNum = 1;
|
|
|
+var isCanSlide = true;
|
|
|
+for (let i = 0; i < slides.children.length; i++) {
|
|
|
+ slides.children[i].style.left = (100 + bodyWidth * i) + "px";
|
|
|
+}
|
|
|
+
|
|
|
+ function nextSlide(){
|
|
|
+
|
|
|
+ if(slideNum < slides.children.length && isCanSlide){
|
|
|
+ isCanSlide = false;
|
|
|
+ for (var k = 0; k < slides.children.length; k++) {
|
|
|
+ slides.children[k].style.left = +getComputedStyle(slides.children[k]).left.replace("px","") - bodyWidth + "px";
|
|
|
+ }
|
|
|
+ slideNum++;
|
|
|
+ setTimeout(function(){
|
|
|
+ isCanSlide = true;
|
|
|
+ },1500)
|
|
|
+ for (let i = 0; i < dotContainer.children.length; i++) {
|
|
|
+ dotContainer.children[i].style.border = "1px solid #fff";
|
|
|
+ dotContainer.children[i].style.backgroundColor = "transparent";
|
|
|
+ }
|
|
|
+ var activeDot = document.getElementById(slideNum);
|
|
|
+ activeDot.style.border = "1px solid #00e0d0";
|
|
|
+ activeDot.style.backgroundColor = "#00e0d0";
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+arrowRight.onclick = nextSlide;
|
|
|
+
|
|
|
+function previousSlide(){
|
|
|
+
|
|
|
+ if(slideNum > 1 && isCanSlide){
|
|
|
+ isCanSlide = false;
|
|
|
+ for (var k = 0; k < slides.children.length; k++) {
|
|
|
+ slides.children[k].style.left = +getComputedStyle(slides.children[k]).left.replace("px","") + bodyWidth + "px";
|
|
|
+ }
|
|
|
+ slideNum--;
|
|
|
+ setTimeout(function(){
|
|
|
+ isCanSlide = true;
|
|
|
+ },1500)
|
|
|
+ for (let i = 0; i < dotContainer.children.length; i++) {
|
|
|
+ dotContainer.children[i].style.border = "1px solid #fff";
|
|
|
+ dotContainer.children[i].style.backgroundColor = "transparent";
|
|
|
+ }
|
|
|
+ var activeDot = document.getElementById(slideNum);
|
|
|
+ activeDot.style.border = "1px solid #00e0d0";
|
|
|
+ activeDot.style.backgroundColor = "#00e0d0";
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+arrowLeft.onclick = previousSlide;
|
|
|
+
|
|
|
+setTimeout(function(){
|
|
|
+ for (let i = 0; i < slides.children.length; i++) {
|
|
|
+ slides.children[i].style.transition = "all 1.5s ease";
|
|
|
+ }
|
|
|
+},1);
|
|
|
+
|
|
|
+///////////////////////////////////////////
|
|
|
+
|
|
|
+var dotContainer = document.createElement("div");
|
|
|
+dotContainer.className = "dot-container";
|
|
|
+dotContainer.setAttribute("style","position: absolute; top: 97%; left: 48%;")
|
|
|
+for (let i = 0; i < slides.children.length; i++) {
|
|
|
+ var dot = document.createElement("div");
|
|
|
+ dot.setAttribute("id",i + 1);
|
|
|
+ dot.onclick = function(){
|
|
|
+ if(isCanSlide){
|
|
|
+ for (let i = 0; i < dotContainer.children.length; i++) {
|
|
|
+ dotContainer.children[i].style.border = "1px solid #fff";
|
|
|
+ dotContainer.children[i].style.backgroundColor = "transparent";
|
|
|
+ }
|
|
|
+ this.style.border = "1px solid #00e0d0";
|
|
|
+ this.style.backgroundColor = "#00e0d0";
|
|
|
+ }
|
|
|
+ if(this.getAttribute("id") > slideNum){
|
|
|
+ if(slideNum < slides.children.length && isCanSlide){
|
|
|
+ isCanSlide = false;
|
|
|
+ for (var k = 0; k < slides.children.length; k++) {
|
|
|
+ slides.children[k].style.left = +getComputedStyle(slides.children[k]).left.replace("px","") - bodyWidth * (this.getAttribute("id") - slideNum) + "px";
|
|
|
+ }
|
|
|
+ slideNum += this.getAttribute("id") - slideNum;
|
|
|
+ setTimeout(function(){
|
|
|
+ isCanSlide = true;
|
|
|
+ },1500)
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ else if(this.getAttribute("id") < slideNum){
|
|
|
+ if(slideNum > 1 && isCanSlide){
|
|
|
+ isCanSlide = false;
|
|
|
+ for (var k = 0; k < slides.children.length; k++) {
|
|
|
+ slides.children[k].style.left = +getComputedStyle(slides.children[k]).left.replace("px","") + bodyWidth * (slideNum - this.getAttribute("id")) + "px";
|
|
|
+ }
|
|
|
+ slideNum -= slideNum - this.getAttribute("id");
|
|
|
+ setTimeout(function(){
|
|
|
+ isCanSlide = true;
|
|
|
+ },1500)
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ dot.setAttribute("style","border-radius: 50%; margin-right: 5px; border:1px solid #fff; width: 10px; height: 10px; display: inline-block; ");
|
|
|
+ if(i === 0){
|
|
|
+ dot.setAttribute("style","border-radius: 50%; margin-right: 5px; background-color: #00e0d0; border:1px solid #00e0d0; width: 10px; height: 10px; display: inline-block; ");
|
|
|
+ }
|
|
|
+ dotContainer.appendChild(dot);
|
|
|
+}
|
|
|
+slider.appendChild(dotContainer);
|
|
|
+
|
|
|
+
|
|
|
+
|