780 lines
27 KiB
JavaScript
780 lines
27 KiB
JavaScript
(function ($) {
|
|
("use strict");
|
|
/*=================================
|
|
JS Index Here
|
|
==================================*/
|
|
/*
|
|
01. On Load Function
|
|
02. Preloader
|
|
03. Mobile Menu Active
|
|
04. Sticky fix
|
|
05. Scroll To Top
|
|
06. Set Background Image
|
|
07. Hero Slider Active
|
|
08. Global Slider
|
|
09. Ajax Contact Form
|
|
10. Magnific Popup
|
|
11. Filter
|
|
12. Popup Sidemenu
|
|
13. Search Box Popup
|
|
14. Accordion Class Toggle
|
|
15. Count Down
|
|
16. Shape Mockup
|
|
17. Range Slider
|
|
18. Woocommerce Toggle
|
|
19. Quantity Added
|
|
*/
|
|
/*=================================
|
|
JS Index End
|
|
==================================*/
|
|
/*
|
|
|
|
/*---------- 01. On Load Function ----------*/
|
|
$(window).on("load", function () {
|
|
$(".preloader").fadeOut();
|
|
});
|
|
|
|
/*---------- 02. Preloader ----------*/
|
|
if ($(".preloader").length > 0) {
|
|
$(".preloaderCls").each(function () {
|
|
$(this).on("click", function (e) {
|
|
e.preventDefault();
|
|
$(".preloader").css("display", "none");
|
|
});
|
|
});
|
|
}
|
|
|
|
/*---------- 03. Mobile Menu Active ----------*/
|
|
$.fn.vsmobilemenu = function (options) {
|
|
var opt = $.extend(
|
|
{
|
|
menuToggleBtn: ".vs-menu-toggle",
|
|
bodyToggleClass: "vs-body-visible",
|
|
subMenuClass: "vs-submenu",
|
|
subMenuParent: "vs-item-has-children",
|
|
subMenuParentToggle: "vs-active",
|
|
meanExpandClass: "vs-mean-expand",
|
|
appendElement: '<span class="vs-mean-expand"></span>',
|
|
subMenuToggleClass: "vs-open",
|
|
toggleSpeed: 400,
|
|
},
|
|
options
|
|
);
|
|
|
|
return this.each(function () {
|
|
var menu = $(this); // Select menu
|
|
|
|
// Menu Show & Hide
|
|
function menuToggle() {
|
|
menu.toggleClass(opt.bodyToggleClass);
|
|
|
|
// collapse submenu on menu hide or show
|
|
var subMenu = "." + opt.subMenuClass;
|
|
$(subMenu).each(function () {
|
|
if ($(this).hasClass(opt.subMenuToggleClass)) {
|
|
$(this).removeClass(opt.subMenuToggleClass);
|
|
$(this).css("display", "none");
|
|
$(this).parent().removeClass(opt.subMenuParentToggle);
|
|
}
|
|
});
|
|
}
|
|
|
|
// Class Set Up for every submenu
|
|
menu.find("li").each(function () {
|
|
var submenu = $(this).find("ul");
|
|
submenu.addClass(opt.subMenuClass);
|
|
submenu.css("display", "none");
|
|
submenu.parent().addClass(opt.subMenuParent);
|
|
submenu.prev("a").append(opt.appendElement);
|
|
submenu.next("a").append(opt.appendElement);
|
|
});
|
|
|
|
// Toggle Submenu
|
|
function toggleDropDown($element) {
|
|
if ($($element).next("ul").length > 0) {
|
|
$($element).parent().toggleClass(opt.subMenuParentToggle);
|
|
$($element).next("ul").slideToggle(opt.toggleSpeed);
|
|
$($element).next("ul").toggleClass(opt.subMenuToggleClass);
|
|
} else if ($($element).prev("ul").length > 0) {
|
|
$($element).parent().toggleClass(opt.subMenuParentToggle);
|
|
$($element).prev("ul").slideToggle(opt.toggleSpeed);
|
|
$($element).prev("ul").toggleClass(opt.subMenuToggleClass);
|
|
}
|
|
}
|
|
|
|
// Submenu toggle Button
|
|
var expandToggler = "." + opt.meanExpandClass;
|
|
$(expandToggler).each(function () {
|
|
$(this).on("click", function (e) {
|
|
e.preventDefault();
|
|
toggleDropDown($(this).parent());
|
|
});
|
|
});
|
|
|
|
// Menu Show & Hide On Toggle Btn click
|
|
$(opt.menuToggleBtn).each(function () {
|
|
$(this).on("click", function () {
|
|
menuToggle();
|
|
});
|
|
});
|
|
|
|
// Hide Menu On out side click
|
|
menu.on("click", function (e) {
|
|
e.stopPropagation();
|
|
menuToggle();
|
|
});
|
|
|
|
// Stop Hide full menu on menu click
|
|
menu.find("div").on("click", function (e) {
|
|
e.stopPropagation();
|
|
});
|
|
});
|
|
};
|
|
|
|
$(".vs-menu-wrapper").vsmobilemenu();
|
|
|
|
/*---------- 04. Sticky fix ----------*/
|
|
// var lastScrollTop = "";
|
|
// var scrollToTopBtn = ".scrollToTop";
|
|
|
|
// function stickyMenu($targetMenu, $toggleClass, $parentClass) {
|
|
// var st = $(window).scrollTop();
|
|
// var height = $targetMenu.css("height");
|
|
// $targetMenu.parent().css("min-height", height);
|
|
// if ($(window).scrollTop() > 800) {
|
|
// $targetMenu.parent().addClass($parentClass);
|
|
|
|
// if (st > lastScrollTop) {
|
|
// $targetMenu.removeClass($toggleClass);
|
|
// } else {
|
|
// $targetMenu.addClass($toggleClass);
|
|
// }
|
|
// } else {
|
|
// $targetMenu.parent().css("min-height", "").removeClass($parentClass);
|
|
// $targetMenu.removeClass($toggleClass);
|
|
// }
|
|
// lastScrollTop = st;
|
|
// }
|
|
// $(window).on("scroll", function () {
|
|
// stickyMenu($(".sticky-active"), "active", "will-sticky");
|
|
// if ($(this).scrollTop() > 500) {
|
|
// $(scrollToTopBtn).addClass("show");
|
|
// } else {
|
|
// $(scrollToTopBtn).removeClass("show");
|
|
// }
|
|
// });
|
|
|
|
var lastScrollTop = "";
|
|
var scrollToTopBtn = ".scrollToTop";
|
|
|
|
function stickyMenu($targetMenu, $toggleClass, $parentClass) {
|
|
var st = $(window).scrollTop();
|
|
var height = $targetMenu.css("height");
|
|
$targetMenu.parent().css("min-height", height);
|
|
|
|
if ($(window).scrollTop() > 800) {
|
|
$targetMenu.parent().addClass($parentClass);
|
|
$targetMenu.addClass($toggleClass); // Navbar tetap terlihat
|
|
} else {
|
|
$targetMenu
|
|
.parent()
|
|
.css("min-height", "")
|
|
.removeClass($parentClass);
|
|
$targetMenu.removeClass($toggleClass);
|
|
}
|
|
|
|
lastScrollTop = st;
|
|
}
|
|
|
|
$(window).on("scroll", function () {
|
|
stickyMenu($(".sticky-active"), "active", "will-sticky");
|
|
|
|
if ($(this).scrollTop() > 500) {
|
|
$(scrollToTopBtn).addClass("show");
|
|
} else {
|
|
$(scrollToTopBtn).removeClass("show");
|
|
}
|
|
});
|
|
|
|
/*---------- 05. Scroll To Top ----------*/
|
|
$(scrollToTopBtn).each(function () {
|
|
$(this).on("click", function (e) {
|
|
e.preventDefault();
|
|
$("html, body").animate(
|
|
{
|
|
scrollTop: 0,
|
|
},
|
|
lastScrollTop / 3
|
|
);
|
|
return false;
|
|
});
|
|
});
|
|
|
|
/*---------- 06. Set Background Image ----------*/
|
|
if ($("[data-bg-src]").length > 0) {
|
|
$("[data-bg-src]").each(function () {
|
|
var src = $(this).attr("data-bg-src");
|
|
$(this).css("background-image", "url(" + src + ")");
|
|
$(this).removeAttr("data-bg-src").addClass("background-image");
|
|
});
|
|
}
|
|
|
|
/*----------- 07. Hero Slider Active ----------*/
|
|
$(".vs-hero-carousel").each(function () {
|
|
var vsHslide = $(this);
|
|
|
|
// Get Data From Dom
|
|
function d(data) {
|
|
return vsHslide.data(data);
|
|
}
|
|
|
|
vsHslide.layerSlider({
|
|
globalBGColor: d("globalbgcolor") ? d("globalbgcolor") : false,
|
|
allowRestartOnResize: true,
|
|
maxRatio: d("maxratio") ? d("maxratio") : 1,
|
|
type: d("slidertype") ? d("slidertype") : "responsive",
|
|
pauseOnHover: d("pauseonhover") ? true : false,
|
|
navPrevNext: d("navprevnext") ? true : false,
|
|
hoverPrevNext: d("hoverprevnext") ? true : false,
|
|
hoverBottomNav: d("hoverbottomnav") ? true : false,
|
|
navStartStop: d("navstartstop") ? true : false,
|
|
navButtons: d("navbuttons") ? true : false,
|
|
loop: d("loop") === false ? false : true,
|
|
autostart: d("autostart") ? true : false,
|
|
height: d("height") ? d("height") : 1080,
|
|
responsiveUnder: d("responsiveunder") ? d("responsiveunder") : 1220,
|
|
layersContainer: d("container") ? d("container") : 1220,
|
|
showCircleTimer: d("showcircletimer") ? true : false,
|
|
skinsPath: "layerslider/skins/",
|
|
thumbnailNavigation:
|
|
d("thumbnailnavigation") === false ? false : true,
|
|
});
|
|
});
|
|
|
|
/*----------- 08. Global Slider ----------*/
|
|
$(".vs-carousel").each(function () {
|
|
var asSlide = $(this);
|
|
|
|
// Collect Data
|
|
function d(data) {
|
|
return asSlide.data(data);
|
|
}
|
|
|
|
// Custom Arrow Button
|
|
var prevButton =
|
|
'<button type="button" class="slick-prev"><i class="' +
|
|
d("prev-arrow") +
|
|
'"></i></button>',
|
|
nextButton =
|
|
'<button type="button" class="slick-next"><i class="' +
|
|
d("next-arrow") +
|
|
'"></i></button>';
|
|
|
|
// Function For Custom Arrow Btn
|
|
$("[data-slick-next]").each(function () {
|
|
$(this).on("click", function (e) {
|
|
e.preventDefault();
|
|
$($(this).data("slick-next")).slick("slickNext");
|
|
});
|
|
});
|
|
|
|
$("[data-slick-prev]").each(function () {
|
|
$(this).on("click", function (e) {
|
|
e.preventDefault();
|
|
$($(this).data("slick-prev")).slick("slickPrev");
|
|
});
|
|
});
|
|
|
|
// Check for arrow wrapper
|
|
if (d("arrows") == true) {
|
|
if (!asSlide.closest(".arrow-wrap").length) {
|
|
asSlide.closest(".container").parent().addClass("arrow-wrap");
|
|
}
|
|
}
|
|
|
|
asSlide.slick({
|
|
dots: d("dots") ? true : false,
|
|
fade: d("fade") ? true : false,
|
|
arrows: d("arrows") ? true : false,
|
|
speed: d("speed") ? d("speed") : 1000,
|
|
asNavFor: d("asnavfor") ? d("asnavfor") : false,
|
|
autoplay: d("autoplay") == false ? false : false,
|
|
infinite: d("infinite") == false ? false : true,
|
|
slidesToShow: d("slide-show") ? d("slide-show") : 1,
|
|
adaptiveHeight: d("adaptive-height") ? true : false,
|
|
centerMode: d("center-mode") ? true : false,
|
|
autoplaySpeed: d("autoplay-speed") ? d("autoplay-speed") : 8000,
|
|
centerPadding: d("center-padding") ? d("center-padding") : "0",
|
|
focusOnSelect: d("focuson-select") == false ? false : true,
|
|
pauseOnFocus: d("pauseon-focus") ? true : false,
|
|
pauseOnHover: d("pauseon-hover") ? true : false,
|
|
variableWidth: d("variable-width") ? true : false,
|
|
vertical: d("vertical") ? true : false,
|
|
verticalSwiping: d("vertical") ? true : false,
|
|
prevArrow: d("prev-arrow")
|
|
? prevButton
|
|
: '<button type="button" class="slick-prev"><i class="far fa-chevron-left"></i></button>',
|
|
nextArrow: d("next-arrow")
|
|
? nextButton
|
|
: '<button type="button" class="slick-next"><i class="far fa-chevron-right"></i></button>',
|
|
rtl: $("html").attr("dir") == "rtl" ? true : false,
|
|
responsive: [
|
|
{
|
|
breakpoint: 1600,
|
|
settings: {
|
|
arrows: d("xl-arrows") ? true : false,
|
|
dots: d("xl-dots") ? true : false,
|
|
slidesToShow: d("xl-slide-show")
|
|
? d("xl-slide-show")
|
|
: d("slide-show"),
|
|
centerMode: d("xl-center-mode") ? true : false,
|
|
centerPadding: 0,
|
|
},
|
|
},
|
|
{
|
|
breakpoint: 1400,
|
|
settings: {
|
|
arrows: d("ml-arrows") ? true : false,
|
|
dots: d("ml-dots") ? true : false,
|
|
slidesToShow: d("ml-slide-show")
|
|
? d("ml-slide-show")
|
|
: d("slide-show"),
|
|
centerMode: d("ml-center-mode") ? true : false,
|
|
centerPadding: 0,
|
|
},
|
|
},
|
|
{
|
|
breakpoint: 1200,
|
|
settings: {
|
|
arrows: d("lg-arrows") ? true : false,
|
|
dots: d("lg-dots") ? true : false,
|
|
slidesToShow: d("lg-slide-show")
|
|
? d("lg-slide-show")
|
|
: d("slide-show"),
|
|
centerMode: d("lg-center-mode")
|
|
? d("lg-center-mode")
|
|
: false,
|
|
centerPadding: 0,
|
|
},
|
|
},
|
|
{
|
|
breakpoint: 992,
|
|
settings: {
|
|
arrows: d("md-arrows") ? true : false,
|
|
dots: d("md-dots") ? true : false,
|
|
slidesToShow: d("md-slide-show")
|
|
? d("md-slide-show")
|
|
: 1,
|
|
centerMode: d("md-center-mode")
|
|
? d("md-center-mode")
|
|
: false,
|
|
centerPadding: 0,
|
|
},
|
|
},
|
|
{
|
|
breakpoint: 767,
|
|
settings: {
|
|
arrows: d("sm-arrows") ? true : false,
|
|
dots: d("sm-dots") ? true : false,
|
|
slidesToShow: d("sm-slide-show")
|
|
? d("sm-slide-show")
|
|
: 1,
|
|
centerMode: d("sm-center-mode")
|
|
? d("sm-center-mode")
|
|
: false,
|
|
centerPadding: 0,
|
|
},
|
|
},
|
|
{
|
|
breakpoint: 576,
|
|
settings: {
|
|
arrows: d("xs-arrows") ? true : false,
|
|
dots: d("xs-dots") ? true : false,
|
|
slidesToShow: d("xs-slide-show")
|
|
? d("xs-slide-show")
|
|
: 1,
|
|
centerMode: d("xs-center-mode")
|
|
? d("xs-center-mode")
|
|
: false,
|
|
centerPadding: 0,
|
|
},
|
|
},
|
|
// You can unslick at a given breakpoint now by adding:
|
|
// settings: "unslick"
|
|
// instead of a settings object
|
|
],
|
|
});
|
|
});
|
|
|
|
/*----------- 09. Ajax Contact Form ----------*/
|
|
var form = ".ajax-contact";
|
|
var invalidCls = "is-invalid";
|
|
var $email = '[name="email"]';
|
|
var $validation =
|
|
'[name="firstname"],[name="lastname"],[name="email"],[name="number"],[name="message"]'; // Must be use (,) without any space
|
|
var formMessages = $(".form-messages");
|
|
|
|
function sendContact() {
|
|
var formData = $(form).serialize();
|
|
var valid;
|
|
valid = validateContact();
|
|
if (valid) {
|
|
jQuery
|
|
.ajax({
|
|
url: $(form).attr("action"),
|
|
data: formData,
|
|
type: "POST",
|
|
})
|
|
.done(function (response) {
|
|
// Make sure that the formMessages div has the 'success' class.
|
|
formMessages.removeClass("error");
|
|
formMessages.addClass("success");
|
|
// Set the message text.
|
|
formMessages.text(response);
|
|
// Clear the form.
|
|
$(
|
|
form +
|
|
' input:not([type="submit"]),' +
|
|
form +
|
|
" textarea"
|
|
).val("");
|
|
})
|
|
.fail(function (data) {
|
|
// Make sure that the formMessages div has the 'error' class.
|
|
formMessages.removeClass("success");
|
|
formMessages.addClass("error");
|
|
// Set the message text.
|
|
if (data.responseText !== "") {
|
|
formMessages.html(data.responseText);
|
|
} else {
|
|
formMessages.html(
|
|
"Oops! An error occured and your message could not be sent."
|
|
);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
function validateContact() {
|
|
var valid = true;
|
|
var formInput;
|
|
|
|
function unvalid($validation) {
|
|
$validation = $validation.split(",");
|
|
for (var i = 0; i < $validation.length; i++) {
|
|
formInput = form + " " + $validation[i];
|
|
if (!$(formInput).val()) {
|
|
$(formInput).addClass(invalidCls);
|
|
valid = false;
|
|
} else {
|
|
$(formInput).removeClass(invalidCls);
|
|
valid = true;
|
|
}
|
|
}
|
|
}
|
|
unvalid($validation);
|
|
|
|
if (
|
|
!$($email).val() ||
|
|
!$($email)
|
|
.val()
|
|
.match(/^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/)
|
|
) {
|
|
$($email).addClass(invalidCls);
|
|
valid = false;
|
|
} else {
|
|
$($email).removeClass(invalidCls);
|
|
valid = true;
|
|
}
|
|
return valid;
|
|
}
|
|
|
|
$(form).on("submit", function (element) {
|
|
element.preventDefault();
|
|
sendContact();
|
|
});
|
|
|
|
/*----------- 10. Magnific Popup ----------*/
|
|
/* magnificPopup img view */
|
|
$(".popup-image").magnificPopup({
|
|
type: "image",
|
|
gallery: {
|
|
enabled: true,
|
|
},
|
|
});
|
|
|
|
/* magnificPopup video view */
|
|
$(".popup-video").magnificPopup({
|
|
type: "iframe",
|
|
});
|
|
|
|
/*----------- 11. Filter ----------*/
|
|
$(".filter-active").imagesLoaded(function () {
|
|
var $filter = ".filter-active",
|
|
$filterItem = ".filter-item",
|
|
$filterMenu = ".filter-menu-active";
|
|
|
|
if ($($filter).length > 0) {
|
|
var $grid = $($filter).isotope({
|
|
itemSelector: $filterItem,
|
|
filter: "*",
|
|
masonry: {
|
|
// use outer width of grid-sizer for columnWidth
|
|
columnWidth: $filterItem,
|
|
},
|
|
});
|
|
|
|
// filter items on button click
|
|
$($filterMenu).on("click", "button", function () {
|
|
var filterValue = $(this).attr("data-filter");
|
|
$grid.isotope({
|
|
filter: filterValue,
|
|
});
|
|
});
|
|
|
|
// Menu Active Class
|
|
$($filterMenu).on("click", "button", function (event) {
|
|
event.preventDefault();
|
|
$(this).addClass("active");
|
|
$(this).siblings(".active").removeClass("active");
|
|
});
|
|
}
|
|
});
|
|
|
|
/*---------- 12. Popup Sidemenu ----------*/
|
|
function popupSideMenu($sideMenu, $sideMunuOpen, $sideMenuCls, $toggleCls) {
|
|
// Sidebar Popup
|
|
$($sideMunuOpen).on("click", function (e) {
|
|
e.preventDefault();
|
|
$($sideMenu).addClass($toggleCls);
|
|
});
|
|
$($sideMenu).on("click", function (e) {
|
|
e.stopPropagation();
|
|
$($sideMenu).removeClass($toggleCls);
|
|
});
|
|
var sideMenuChild = $sideMenu + " > div";
|
|
$(sideMenuChild).on("click", function (e) {
|
|
e.stopPropagation();
|
|
$($sideMenu).addClass($toggleCls);
|
|
});
|
|
$($sideMenuCls).on("click", function (e) {
|
|
e.preventDefault();
|
|
e.stopPropagation();
|
|
$($sideMenu).removeClass($toggleCls);
|
|
});
|
|
}
|
|
popupSideMenu(
|
|
".sidemenu-wrapper",
|
|
".sideMenuToggler",
|
|
".sideMenuCls",
|
|
"show"
|
|
);
|
|
|
|
/*---------- 13. Search Box Popup ----------*/
|
|
function popupSarchBox($searchBox, $searchOpen, $searchCls, $toggleCls) {
|
|
$($searchOpen).on("click", function (e) {
|
|
e.preventDefault();
|
|
$($searchBox).addClass($toggleCls);
|
|
});
|
|
$($searchBox).on("click", function (e) {
|
|
e.stopPropagation();
|
|
$($searchBox).removeClass($toggleCls);
|
|
});
|
|
$($searchBox)
|
|
.find("form")
|
|
.on("click", function (e) {
|
|
e.stopPropagation();
|
|
$($searchBox).addClass($toggleCls);
|
|
});
|
|
$($searchCls).on("click", function (e) {
|
|
e.preventDefault();
|
|
e.stopPropagation();
|
|
$($searchBox).removeClass($toggleCls);
|
|
});
|
|
}
|
|
popupSarchBox(
|
|
".popup-search-box",
|
|
".searchBoxTggler",
|
|
".searchClose",
|
|
"show"
|
|
);
|
|
|
|
/*----------- 14. Accordion Class Toggle ----------*/
|
|
$(".accordion-button").on("click", function () {
|
|
let btn = $(this).closest(".accordion-item");
|
|
btn.toggleClass("active").siblings().removeClass("active");
|
|
});
|
|
|
|
/*----------- 15. Count Down ----------*/
|
|
$.fn.countdown = function () {
|
|
$(this).each(function () {
|
|
var $counter = $(this),
|
|
countDownDate = new Date($counter.data("end-date")).getTime(), // Set the date we're counting down toz
|
|
exprireCls = "expired";
|
|
|
|
// Finding Function
|
|
function s$(element) {
|
|
return $counter.find(element);
|
|
}
|
|
|
|
// Update the count down every 1 second
|
|
var counter = setInterval(function () {
|
|
// Get today's date and time
|
|
var now = new Date().getTime();
|
|
|
|
// Find the distance between now and the count down date
|
|
var distance = countDownDate - now;
|
|
|
|
// Time calculations for days, hours, minutes and seconds
|
|
var days = Math.floor(distance / (1000 * 60 * 60 * 24));
|
|
var hours = Math.floor(
|
|
(distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)
|
|
);
|
|
var minutes = Math.floor(
|
|
(distance % (1000 * 60 * 60)) / (1000 * 60)
|
|
);
|
|
var seconds = Math.floor((distance % (1000 * 60)) / 1000);
|
|
|
|
// if low than 10 add zero
|
|
function addZero(element) {
|
|
return element < 10 ? "0" + element : element;
|
|
}
|
|
|
|
// If the count down is over, write some text
|
|
if (distance < 0) {
|
|
clearInterval(counter);
|
|
$counter.addClass(exprireCls);
|
|
$counter.find(".message").css("display", "block");
|
|
} else {
|
|
// Output the result in elements
|
|
s$(".day").html(addZero(days));
|
|
s$(".hour").html(addZero(hours));
|
|
s$(".minute").html(addZero(minutes));
|
|
s$(".seconds").html(addZero(seconds));
|
|
}
|
|
}, 1000);
|
|
});
|
|
};
|
|
|
|
if ($(".countdown-active").length) {
|
|
$(".countdown-active").countdown();
|
|
}
|
|
|
|
/*----------- 16. Shape Mockup ----------*/
|
|
$.fn.shapeMockup = function () {
|
|
var $shape = $(this);
|
|
$shape.each(function () {
|
|
var $currentShape = $(this),
|
|
shapeTop = $currentShape.data("top"),
|
|
shapeRight = $currentShape.data("right"),
|
|
shapeBottom = $currentShape.data("bottom"),
|
|
shapeLeft = $currentShape.data("left");
|
|
$currentShape
|
|
.css({
|
|
top: shapeTop,
|
|
right: shapeRight,
|
|
bottom: shapeBottom,
|
|
left: shapeLeft,
|
|
})
|
|
.removeAttr("data-top")
|
|
.removeAttr("data-right")
|
|
.removeAttr("data-bottom")
|
|
.removeAttr("data-left")
|
|
.parent()
|
|
.addClass("shape-mockup-wrap");
|
|
});
|
|
};
|
|
|
|
if ($(".shape-mockup")) {
|
|
$(".shape-mockup").shapeMockup();
|
|
}
|
|
|
|
/*----------- 17. Range Slider ----------*/
|
|
$("#slider-range").slider({
|
|
range: true,
|
|
min: 40,
|
|
max: 300,
|
|
values: [60, 570],
|
|
slide: function (event, ui) {
|
|
$("#minAmount").text("$" + ui.values[0]);
|
|
$("#maxAmount").text("$" + ui.values[1]);
|
|
},
|
|
});
|
|
$("#minAmount").text("$" + $("#slider-range").slider("values", 0));
|
|
$("#maxAmount").text("$" + $("#slider-range").slider("values", 1));
|
|
|
|
/*----------- 18. Woocommerce Toggle ----------*/
|
|
// Ship To Different Address
|
|
$("#ship-to-different-address-checkbox").on("change", function () {
|
|
if ($(this).is(":checked")) {
|
|
$("#ship-to-different-address")
|
|
.next(".shipping_address")
|
|
.slideDown();
|
|
} else {
|
|
$("#ship-to-different-address").next(".shipping_address").slideUp();
|
|
}
|
|
});
|
|
|
|
// Login Toggle
|
|
$(".woocommerce-form-login-toggle a").on("click", function (e) {
|
|
e.preventDefault();
|
|
$(".woocommerce-form-login").slideToggle();
|
|
});
|
|
|
|
// Coupon Toggle
|
|
$(".woocommerce-form-coupon-toggle a").on("click", function (e) {
|
|
e.preventDefault();
|
|
$(".woocommerce-form-coupon").slideToggle();
|
|
});
|
|
|
|
// Woocommerce Shipping Method
|
|
$(".shipping-calculator-button").on("click", function (e) {
|
|
e.preventDefault();
|
|
$(this).next(".shipping-calculator-form").slideToggle();
|
|
});
|
|
|
|
// Woocommerce Payment Toggle
|
|
$('.wc_payment_methods input[type="radio"]:checked')
|
|
.siblings(".payment_box")
|
|
.show();
|
|
$('.wc_payment_methods input[type="radio"]').each(function () {
|
|
$(this).on("change", function () {
|
|
$(".payment_box").slideUp();
|
|
$(this).siblings(".payment_box").slideDown();
|
|
});
|
|
});
|
|
|
|
// Woocommerce Rating Toggle
|
|
$(".rating-select .stars a").each(function () {
|
|
$(this).on("click", function (e) {
|
|
e.preventDefault();
|
|
$(this).siblings().removeClass("active");
|
|
$(this).parent().parent().addClass("selected");
|
|
$(this).addClass("active");
|
|
});
|
|
});
|
|
|
|
/*---------- 19. Quantity Added ----------*/
|
|
$(".quantity-plus").each(function () {
|
|
$(this).on("click", function (e) {
|
|
e.preventDefault();
|
|
var $qty = $(this).siblings(".qty-input");
|
|
var currentVal = parseInt($qty.val());
|
|
if (!isNaN(currentVal)) {
|
|
$qty.val(currentVal + 1);
|
|
}
|
|
});
|
|
});
|
|
|
|
$(".quantity-minus").each(function () {
|
|
$(this).on("click", function (e) {
|
|
e.preventDefault();
|
|
var $qty = $(this).siblings(".qty-input");
|
|
var currentVal = parseInt($qty.val());
|
|
if (!isNaN(currentVal) && currentVal > 1) {
|
|
$qty.val(currentVal - 1);
|
|
}
|
|
});
|
|
});
|
|
})(jQuery);
|