')
.prependTo($target)
.css({
'z-index': zIndex
});
}
$('.wpkoi-parallax-section__image', $layout).css({
'background-image': 'url(' + imageData.url + ')',
'background-size': bgSize,
'background-position-x': bgX + '%',
'background-position-y': bgY + '%',
});
var layoutData = {
selector: $layout,
image: imageData.url,
size: bgSize,
prop: animProp,
type: type,
xPos: bgX,
yPos: bgY,
speed: 2 * (speed / 100)
};
if (type !== 'none') {
if (type === 'scroll' || type === 'zoom') {
scrollLayoutList.push(layoutData);
} else if (type === 'mouse') {
mouseLayoutList.push(layoutData);
}
}
});
};
self.scrollHandler = function() {
winScrollTop = $window.scrollTop();
self.scrollUpdate();
};
self.scrollUpdate = function() {
$.each(scrollLayoutList, function(index, layout) {
var $this = layout.selector,
$image = $( '.wpkoi-parallax-section__image', $this ),
speed = layout.speed,
offsetTop = $this.offset().top,
thisHeight = $this.outerHeight(),
prop = layout.prop,
type = layout.type,
posY = ( winScrollTop - offsetTop + winHeight ) / thisHeight * 100,
device = elementorFrontend.getCurrentDeviceMode();
if ( winScrollTop < offsetTop - winHeight ) posY = 0;
if ( winScrollTop > offsetTop + thisHeight) posY = 200;
posY = parseFloat( speed * posY ).toFixed(1);
switch( type ) {
case 'scroll':
if ( 'bgposition' === layout.prop ) {
$image.css( {
'background-position-y': 'calc(' + layout.yPos + '% + ' + posY + 'px)'
} );
} else {
$image.css( {
'transform': 'translateY(' + posY + 'px)'
} );
}
break;
case 'zoom':
var deltaScale = ( winScrollTop - offsetTop + winHeight ) / winHeight,
scale = deltaScale * speed;
scale = scale + 1;
$image.css( {
'transform': 'scale(' + scale + ')'
} );
break;
}
});
};
self.mouseHandler = function(event) {
if (requestMouse) {
cancelAnimationFrame(requestMouse);
}
tiltx = (event.pageX - $window.width() / 2) / ($window.width() / 2);
tilty = (event.pageY - $window.height() / 2) / ($window.height() / 2);
requestMouse = requestAnimationFrame(self.mouseUpdate);
};
self.mouseUpdate = function() {
$.each(mouseLayoutList, function(index, layout) {
$(layout.selector).css('transform', 'translate3d(' + (tiltx * layout.speed * 100) + 'px, ' + (tilty * layout.speed * 100) + 'px, 0) scale(' + layout.scale + ')');
});
};
};
} )( jQuery, window.elementorFrontend );
function Parallax(options){
jQuery(document).ready(function($) {
options = options || {};
this.nameSpaces = {
wrapper: options.wrapper || '.wpkoi-parallax-section',
layers: options.layers || '.wpkoi-parallax-section__mouse-layout .wpkoi-parallax-section__image',
deep: options.deep || 'data-parallax-deep',
scale: options.scale || 'data-parallax-scale'
};
this.init = function() {
var self = this,
parallaxWrappers = document.querySelectorAll(this.nameSpaces.wrapper);
for(var i = 0; i < parallaxWrappers.length; i++){
(function(i){
parallaxWrappers[i].addEventListener('mousemove', function(e){
var x = e.clientX,
y = e.clientY,
layers = parallaxWrappers[i].querySelectorAll(self.nameSpaces.layers);
for(var j = 0; j < layers.length; j++){
(function(j){
var deep = layers[j].getAttribute(self.nameSpaces.deep),
scale = layers[j].getAttribute(self.nameSpaces.scale),
scale = scale / 100,
disallow = layers[j].getAttribute('data-parallax-disallow'),
itemX = (disallow && disallow === 'x') ? 0 : x / deep - 10,
itemY = (disallow && disallow === 'y') ? 0 : y / deep - 10;
if(disallow && disallow === 'both') return;
layers[j].style.transform = 'translateX(' + itemX + '%) translateY(' + itemY + '%) scale(' + scale + ')';
layers[j].style.transitionDuration = '0s';
})(j);
}
})
parallaxWrappers[i].addEventListener('mouseleave', function(e){
var layers = parallaxWrappers[i].querySelectorAll(self.nameSpaces.layers);
for(var j = 0; j < layers.length; j++){
(function(j){
var scale = layers[j].getAttribute(self.nameSpaces.scale),
scale = scale / 100,
disallow = layers[j].getAttribute('data-parallax-disallow');
if(disallow && disallow === 'both') return;
layers[j].style.transform = 'translateX(0%) translateY(0%) scale(' + scale + ')';
layers[j].style.transitionDuration = '0.5s';
})(j);
}
})
})(i);
}
};
this.init();
return this;
});
}
jQuery(document).ready(function($) {
new Parallax();
});
jQuery(function(l){if("undefined"==typeof wc_address_i18n_params)return!1;var e=wc_address_i18n_params.locale.replace(/"/g,'"'),n=JSON.parse(e);function o(e,a){a?(e.find("label .optional").remove(),e.addClass("validate-required"),0===e.find("label .required").length&&e.find("label").append(' *')):(e.find("label .required").remove(),e.removeClass("validate-required woocommerce-invalid woocommerce-invalid-required-field"),0===e.find("label .optional").length&&e.find("label").append(' ('+wc_address_i18n_params.i18n_optional_text+")"))}l(document.body).on("country_to_state_changing",function(e,a,i){var d=i,r="undefined"!=typeof n[a]?n[a]:n["default"],i=d.find("#billing_postcode_field, #shipping_postcode_field"),a=d.find("#billing_city_field, #shipping_city_field"),t=d.find("#billing_state_field, #shipping_state_field"),i=(i.attr("data-o_class")||(i.attr("data-o_class",i.attr("class")),a.attr("data-o_class",a.attr("class")),t.attr("data-o_class",t.attr("class"))),JSON.parse(wc_address_i18n_params.locale_fields));l.each(i,function(e,a){var a=d.find(a),i=l.extend(!0,{},n["default"][e],r[e]);"undefined"!=typeof i.label&&a.find("label").html(i.label),"undefined"!=typeof i.placeholder&&(a.find(":input").attr("placeholder",i.placeholder),a.find(":input").attr("data-placeholder",i.placeholder),a.find(".select2-selection__placeholder").text(i.placeholder)),"undefined"!=typeof i.placeholder||"undefined"==typeof i.label||a.find("label").length||(a.find(":input").attr("placeholder",i.label),a.find(":input").attr("data-placeholder",i.label),a.find(".select2-selection__placeholder").text(i.label)),"undefined"!=typeof i.required?o(a,i.required):o(a,!1),"undefined"!=typeof i.priority&&a.data("priority",i.priority),"state"!==e&&("undefined"!=typeof i.hidden&&!0===i.hidden?a.hide().find(":input").val(""):a.show()),Array.isArray(i["class"])&&(a.removeClass("form-row-first form-row-last form-row-wide"),a.addClass(i["class"].join(" ")))}),l(".woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-address-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper .woocommerce-account-fields").each(function(e,a){var a=l(a).find(".form-row"),i=a.first().parent(),d=0;a.each(function(){l(this).data("priority")||l(this).data("priority",d+1),d=l(this).data("priority")}),a.sort(function(e,a){e=parseInt(l(e).data("priority"),10),a=parseInt(l(a).data("priority"),10);return aHemz Internationalhttps://validator.w3.org/feed/docs/rss2.html0Dino You Sweet Life slot machine are going to Online slots games Games CommentEyes away from Horus Megaways Review Play So it Slot inside 2025Da Vinci Expensive diamonds Twin Gamble Slots Gamble Online free Platinum Reels 100 spins no deposit casino games On the internet1984 and Red Azaleas Illustrations of Totalitarian TechniqueЧто они являются куш в онлайн казино с акциямиКакие из себя выражают выигрыши в интернет-казино с бонусамиКаким способом запускать игры даром на официальном веб-сайте и зеркале гэмблинг-платформыОсобенности игрового процесса в интернет-казино с привилегиями на деньги.Quick strategies for writing marketing essaysАзартные предпочтения посетителей онлайн казино с привилегиямиСоздание игровых автоматов для онлайн казино с привилегиями: известные производителиçevrimiçi casinolar para nakde çevirme işlemlerinin Özellikleri ayrıcalıklar ile.</h1>Bir kumar işletmesinin işleyişini 7/24 servis ile hangi şekilde garanti eder?</h1>5 150 possibility Path Kings Expert Finest Bitcoin Gambling Sites 2025 Leading Crypto Casinos2025 Tips for writing a high-quality business essay quicklyCasinoMilyon Kumar Sitesi Hakkinda Güvenlik RaporuEssay On Why I Want To Be A Nurse AssistantHow to locate a millionaire sugar momma right nowParibahis Hosgeldin Bonusu: Keyifli Anlar, Büyük Kazançlar<h1>Каким образом отыскать виртуальное казино с привилегиями за создание аккаунта</h1><h1>Каким образом найти онлайн казино с подарками за создание аккаунта</h1>Age of Privateers Spielautomat zum kostenlosen Slot tuts twister verbinden geben GreentubeAdventures inside wild gambler kostenlose Spins keine Einzahlung Wonderland Spielautomat & Maklercourtage Kode von Playtech & Ash GamingZugelassen 300 Shields 50 kostenlose Spins auf bier haus Keine Einzahlung within Online Casinos zum besten geben 2025Rechtens 300 Shields as part of Online Casinos zum Kostenlose Spins fantasini master mystery Keine Einzahlung besten geben 2025100 Herr BET 80 Bonus Spins keine Einzahlung Freispiele abzüglich Einzahlung: Top Angebote 2025Gambling on slot machines at pokies netWhich Statement Best Describes The Body Paragraphs Of An Argumentative Essay<h1>sertifikalı bir sanal kumarhanesinin hediyeler ile Dezavantajları.</h1><h1>Lisanslı bir İnternet kumar platformunun bonuslar ile avantajları.</h1><h1>Mobil varyant internet kumar kuruluşu makinelerde oynamak için bonuslar ile.</h1><h1>Taşınabilir varyant çevrimiçi kumar kuruluşu slotlarda oynamak için bonuslar ile.</h1>The societal aspects of their writing made Dickens and Shaw two of the most influential figures of revolutionary and sociopolitical writing WilliamWhat Does A Cause And Effect Essay Look LikeHow To Make A General Statement In An Essaywas written in the 1900s by an author named WH Auden It is a popular poem and was included in the British movie Four Weddings and a Funeral inThe Out of Stock Phenomena and Its Negative Impact on Buyers and BusinessesTop Random Video Chat Platforms for Fun – Reasons Spontaneous Video Chat Is So Common<h1>Каким способом отыскать интернет-казино с подарками за создание аккаунта</h1><h1>Каким способом обнаружить онлайн казино с привилегиями за вступление</h1><h1>Особенности депозита и снятия денег в онлайн казино с акциями.</h1><h1>Специфика пополнения и обналичивания средств в виртуальных казино с привилегиями.</h1><h1>Официальный вход в онлайн казино с бонусами</h1><h1>Разрешенный вход в интернет гэмблинг-платформу с привилегиями</h1>På kasino Find ma bedste online casinoer pr. 2024På kasino Opdage de bedste tilslutte casinoer inden for 2024Tomb Raider Spilleban SlotsSpil Nu om stunder Grundige Online Spilleban anmeldelser 2024Indbetalingsbonus Odds & Casino Bedste Bonusser 2024Tilslutte Spilleautomater & Grunge Spilleban Dannevan