v;v++)e.lineTo(i,0),e.translate(i,0),e.rotate(l);e.fill(),e.restore()},i.fn.vendors.exportImg=function(){window.open(i.canvas.el.toDataURL("image/png"),"_blank")},i.fn.vendors.loadImg=function(e){if(i.tmp.img_error=void 0,""!=i.particles.shape.image.src)if("svg"==e){var a=new XMLHttpRequest;a.open("GET",i.particles.shape.image.src),a.onreadystatechange=function(e){4==a.readyState&&(200==a.status?(i.tmp.source_svg=e.currentTarget.response,i.fn.vendors.checkBeforeDraw()):(console.log("Error pJS - Image not found"),i.tmp.img_error=!0))},a.send()}else{var t=new Image;t.addEventListener("load",function(){i.tmp.img_obj=t,i.fn.vendors.checkBeforeDraw()}),t.src=i.particles.shape.image.src}else console.log("Error pJS - No image.src"),i.tmp.img_error=!0},i.fn.vendors.draw=function(){"image"==i.particles.shape.type?"svg"==i.tmp.img_type?i.tmp.count_svg>=i.particles.number.value?(i.fn.particlesDraw(),i.particles.move.enable?i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw):cancelRequestAnimFrame(i.fn.drawAnimFrame)):i.tmp.img_error||(i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw)):void 0!=i.tmp.img_obj?(i.fn.particlesDraw(),i.particles.move.enable?i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw):cancelRequestAnimFrame(i.fn.drawAnimFrame)):i.tmp.img_error||(i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw)):(i.fn.particlesDraw(),i.particles.move.enable?i.fn.drawAnimFrame=requestAnimFrame(i.fn.vendors.draw):cancelRequestAnimFrame(i.fn.drawAnimFrame))},i.fn.vendors.checkBeforeDraw=function(){"image"==i.particles.shape.type?"svg"==i.tmp.img_type&&void 0==i.tmp.source_svg?i.tmp.checkAnimFrame=requestAnimFrame(check):(cancelRequestAnimFrame(i.tmp.checkAnimFrame),i.tmp.img_error||(i.fn.vendors.init(),i.fn.vendors.draw())):(i.fn.vendors.init(),i.fn.vendors.draw())},i.fn.vendors.init=function(){i.fn.retinaInit(),i.fn.canvasInit(),i.fn.canvasSize(),i.fn.canvasPaint(),i.fn.particlesCreate(),i.fn.vendors.densityAutoParticles(),i.particles.line_linked.color_rgb_line=hexToRgb(i.particles.line_linked.color)},i.fn.vendors.start=function(){isInArray("image",i.particles.shape.type)?(i.tmp.img_type=i.particles.shape.image.src.substr(i.particles.shape.image.src.length-3),i.fn.vendors.loadImg(i.tmp.img_type)):i.fn.vendors.checkBeforeDraw()},i.fn.vendors.eventsListeners(),i.fn.vendors.start()};Object.deepExtend=function(e,a){for(var t in a)a[t]&&a[t].constructor&&a[t].constructor===Object?(e[t]=e[t]||{},arguments.callee(e[t],a[t])):e[t]=a[t];return e},window.requestAnimFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(e){window.setTimeout(e,1e3/60)}}(),window.cancelRequestAnimFrame=function(){return window.cancelAnimationFrame||window.webkitCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||window.oCancelRequestAnimationFrame||window.msCancelRequestAnimationFrame||clearTimeout}(),window.pJSDom=[],window.particlesJS=function(e,a){"string"!=typeof e&&(a=e,e="particles-js"),e||(e="particles-js");var t=document.getElementById(e),i="particles-js-canvas-el",s=t.getElementsByClassName(i);if(s.length)for(;s.length>0;)t.removeChild(s[0]);var n=document.createElement("canvas");n.className=i,n.style.width="100%",n.style.height="100%";var r=document.getElementById(e).appendChild(n);null!=r&&pJSDom.push(new pJS(e,a))},window.particlesJS.load=function(e,a,t){var i=new XMLHttpRequest;i.open("GET",a),i.onreadystatechange=function(a){if(4==i.readyState)if(200==i.status){var s=JSON.parse(a.currentTarget.response);window.particlesJS(e,s),t&&t()}else console.log("Error pJS - XMLHttpRequest status: "+i.status),console.log("Error pJS - File config not found")},i.send()};
/* ========================================================================
* Bootstrap: dropdown.js v3.3.7
* http://getbootstrap.com/javascript/#dropdowns
* ========================================================================
* Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* ======================================================================== */
+function ($) {
'use strict';
// DROPDOWN CLASS DEFINITION
// =========================
var backdrop = '.dropdown-backdrop'
var toggle = '[data-toggle="dropdown"]'
var Dropdown = function (element) {
$(element).on('click.bs.dropdown', this.toggle)
}
Dropdown.VERSION = '3.3.7'
function getParent($this) {
var selector = $this.attr('data-target')
if (!selector) {
selector = $this.attr('href')
selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
}
var $parent = selector && $(selector)
return $parent && $parent.length ? $parent : $this.parent()
}
function clearMenus(e) {
if (e && e.which === 3) return
$(backdrop).remove()
$(toggle).each(function () {
var $this = $(this)
var $parent = getParent($this)
var relatedTarget = { relatedTarget: this }
if (!$parent.hasClass('open')) return
if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return
$parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))
if (e.isDefaultPrevented()) return
$this.attr('aria-expanded', 'false')
$parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget))
})
}
Dropdown.prototype.toggle = function (e) {
var $this = $(this)
if ($this.is('.disabled, :disabled')) return
var $parent = getParent($this)
var isActive = $parent.hasClass('open')
clearMenus()
if (!isActive) {
if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
// if mobile we use a backdrop because click events don't delegate
$(document.createElement('div'))
.addClass('dropdown-backdrop')
.insertAfter($(this))
.on('click', clearMenus)
}
var relatedTarget = { relatedTarget: this }
$parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))
if (e.isDefaultPrevented()) return
$this
.trigger('focus')
.attr('aria-expanded', 'true')
$parent
.toggleClass('open')
.trigger($.Event('shown.bs.dropdown', relatedTarget))
}
return false
}
Dropdown.prototype.keydown = function (e) {
if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return
var $this = $(this)
e.preventDefault()
e.stopPropagation()
if ($this.is('.disabled, :disabled')) return
var $parent = getParent($this)
var isActive = $parent.hasClass('open')
if (!isActive && e.which != 27 || isActive && e.which == 27) {
if (e.which == 27) $parent.find(toggle).trigger('focus')
return $this.trigger('click')
}
var desc = ' li:not(.disabled):visible a'
var $items = $parent.find('.dropdown-menu' + desc)
if (!$items.length) return
var index = $items.index(e.target)
if (e.which == 38 && index > 0) index-- // up
if (e.which == 40 && index < $items.length - 1) index++ // down
if (!~index) index = 0
$items.eq(index).trigger('focus')
}
// DROPDOWN PLUGIN DEFINITION
// ==========================
function Plugin(option) {
return this.each(function () {
var $this = $(this)
var data = $this.data('bs.dropdown')
if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))
if (typeof option == 'string') data[option].call($this)
})
}
var old = $.fn.dropdown
$.fn.dropdown = Plugin
$.fn.dropdown.Constructor = Dropdown
// DROPDOWN NO CONFLICT
// ====================
$.fn.dropdown.noConflict = function () {
$.fn.dropdown = old
return this
}
// APPLY TO STANDARD DROPDOWN ELEMENTS
// ===================================
$(document)
.on('click.bs.dropdown.data-api', clearMenus)
.on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
.on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)
.on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown)
.on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown)
}(jQuery);
/*
* jQuery liMarquee v 4.6
*
* Copyright 2013, Linnik Yura | LI MASS CODE | http://masscode.ru
* http://masscode.ru/index.php/k2/item/44-limarquee
* Free to use
*
* Last Update 20.11.2014
*/
(function ($) {
var methods = {
init: function (options) {
var p = {
direction: 'left', //Указывает направление движения содержимого контейнера (left | right | up | down)
loop: -1, //Задает, сколько раз будет прокручиваться содержимое. "-1" для бесконечного воспроизведения движения
scrolldelay: 0, //Величина задержки в миллисекундах между движениями
scrollamount: 50, //Скорость движения контента (px/sec)
circular: true, //Если "true" - строка непрерывная
drag: true, //Если "true" - включено перетаскивание строки
runshort: true, //Если "true" - короткая строка тоже "бегает", "false" - стоит на месте
hoverstop: true, //true - строка останавливается при наведении курсора мыши, false - строка не останавливается
inverthover: false, //false - стандартное поведение. Если "true" - строка начинает движение только при наведении курсора
xml: false //Путь к xml файлу с нужным текстом
};
if (options) {
$.extend(p, options);
}
return this.each(function () {
var enterEvent = 'mouseenter';
var leaveEvent = 'mouseleave';
if(p.inverthover){
enterEvent = 'mouseleave';
leaveEvent = 'mouseenter';
}
var
loop = p.loop,
strWrap = $(this).addClass('str_wrap').data({scrollamount:p.scrollamount}),
fMove = false;
var strWrapStyle = strWrap.attr('style');
if(strWrapStyle){
var wrapStyleArr = strWrapStyle.split(';');
var startHeight = false;
for(var i=0; i < wrapStyleArr.length; i++){
var str = $.trim(wrapStyleArr[i]);
var tested = str.search(/^height/g);
if(tested != -1){
startHeight = parseFloat(strWrap.css('height'));
}
}
}
var code = function () {
strWrap.off('mouseleave');
strWrap.off('mouseenter');
strWrap.off('mousemove');
strWrap.off('mousedown');
strWrap.off('mouseup');
if(!$('.str_move',strWrap).length){
strWrap.wrapInner($('').addClass('str_move'));
}
var
strMove = $('.str_move', strWrap).addClass('str_origin'),
strMoveClone = strMove.clone().removeClass('str_origin').addClass('str_move_clone'),
time = 0;
if (!p.hoverstop) {
strWrap.addClass('noStop');
}
var circCloneHor = function(){
strMoveClone.clone().css({
left:'100%',
right:'auto',
width: strMove.width()
}).appendTo(strMove);
strMoveClone.css({
right: '100%',
left:'auto',
width: strMove.width()
}).appendTo(strMove);
}
var circCloneVert = function(){
strMoveClone.clone().css({
top: '100%',
bottom:'auto',
height: strMove.height()
}).appendTo(strMove);
strMoveClone.css({
bottom: '100%',
top:'auto',
height:strMove.height()
}).appendTo(strMove);
}
if (p.direction == 'left') {
strWrap.height(strMove.outerHeight())
if (strMove.width() > strWrap.width()) {
var leftPos = -strMove.width();
if (p.circular) {
if (!p.xml) {
circCloneHor()
leftPos = -(strMove.width() + (strMove.width() - strWrap.width()));
}
}
if (p.xml) {
strMove.css({
left:strWrap.width()
})
}
var
strMoveLeft = strWrap.width(),
k1 = 0,
timeFunc1 = function () {
var
fullS = Math.abs(leftPos),
time = (fullS / strWrap.data('scrollamount')) * 1000;
if (parseFloat(strMove.css('left')) != 0) {
fullS = (fullS + strWrap.width());
time = (fullS - (strWrap.width() - parseFloat(strMove.css('left')))) / strWrap.data('scrollamount') * 1000;
}
return time;
},
moveFuncId1 = false,
moveFunc1 = function () {
if (loop != 0) {
strMove.stop(true).animate({
left: leftPos
}, timeFunc1(), 'linear', function () {
$(this).css({
left: strWrap.width()
});
if (loop == -1) {
moveFuncId1 = setTimeout(moveFunc1, p.scrolldelay);
} else {
loop--;
moveFuncId1 = setTimeout(moveFunc1, p.scrolldelay);
}
});
}
};
strWrap.data({
moveId: moveFuncId1 ,
moveF : moveFunc1
})
if(!p.inverthover){
moveFunc1();
}
if (p.hoverstop) {
strWrap.on(enterEvent, function () {
$(this).addClass('str_active');
clearTimeout(moveFuncId1);
strMove.stop(true);
}).on(leaveEvent, function () {
$(this).removeClass('str_active');
$(this).off('mousemove');
moveFunc1();
});
if (p.drag) {
strWrap.on('mousedown', function (e) {
if(p.inverthover){
strMove.stop(true);
}
//drag
var dragLeft;
var dir = 1;
var newX;
var oldX = e.clientX;
//drag
strMoveLeft = strMove.position().left;
k1 = strMoveLeft - (e.clientX - strWrap.offset().left);
$(this).on('mousemove', function (e) {
fMove = true;
//drag
newX = e.clientX;
if(newX > oldX){
dir = 1
}else{
dir = -1
}
oldX = newX
dragLeft = k1 + (e.clientX - strWrap.offset().left);
if (!p.circular) {
if(dragLeft < -strMove.width() && dir < 0){
dragLeft = strWrap.width();
strMoveLeft = strMove.position().left;
k1 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
if(dragLeft > strWrap.width() && dir > 0){
dragLeft = -strMove.width();
strMoveLeft = strMove.position().left;
k1 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
}else{
if(dragLeft < -strMove.width() && dir < 0){
dragLeft = 0;
strMoveLeft = strMove.position().left;
k1 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
if(dragLeft > 0 && dir > 0){
dragLeft = -strMove.width();
strMoveLeft = strMove.position().left;
k1 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
}
strMove.stop(true).css({
left: dragLeft
});
//drag
}).on('mouseup', function () {
$(this).off('mousemove');
if(p.inverthover){
strMove.trigger('mouseenter')
}
setTimeout(function () {
fMove = false
}, 50)
});
return false;
})
.on('click', function () {
if (fMove) {
return false
}
});
} else {
strWrap.addClass('no_drag');
};
}
} else {
if (p.runshort) {
strMove.css({
left: strWrap.width()
});
var
strMoveLeft = strWrap.width(),
k1 = 0,
timeFunc = function () {
time = (strMove.width() + strMove.position().left) / strWrap.data('scrollamount') * 1000;
return time;
};
var moveFunc = function () {
var leftPos = -strMove.width();
strMove.animate({
left: leftPos
}, timeFunc(), 'linear', function () {
$(this).css({
left: strWrap.width()
});
if (loop == -1) {
setTimeout(moveFunc, p.scrolldelay);
} else {
loop--;
setTimeout(moveFunc, p.scrolldelay);
}
});
};
strWrap.data({
moveF : moveFunc
})
if(!p.inverthover){
moveFunc();
}
if (p.hoverstop) {
strWrap.on(enterEvent, function () {
$(this).addClass('str_active');
strMove.stop(true);
}).on(leaveEvent, function () {
$(this).removeClass('str_active');
$(this).off('mousemove');
moveFunc();
});
if (p.drag) {
strWrap.on('mousedown', function (e) {
if(p.inverthover){
strMove.stop(true);
}
//drag
var dragLeft;
var dir = 1;
var newX;
var oldX = e.clientX;
//drag
strMoveLeft = strMove.position().left;
k1 = strMoveLeft - (e.clientX - strWrap.offset().left);
$(this).on('mousemove', function (e) {
fMove = true;
//drag
newX = e.clientX;
if(newX > oldX){
dir = 1
}else{
dir = -1
}
oldX = newX
dragLeft = k1 + (e.clientX - strWrap.offset().left);
if(dragLeft < -strMove.width() && dir < 0){
dragLeft = strWrap.width();
strMoveLeft = strMove.position().left;
k1 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
if(dragLeft > strWrap.width() && dir > 0){
dragLeft = -strMove.width();
strMoveLeft = strMove.position().left;
k1 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
strMove.stop(true).css({
left: dragLeft
});
}).on('mouseup', function () {
if(p.inverthover){
strMove.trigger('mouseenter')
}
$(this).off('mousemove');
setTimeout(function () {
fMove = false
}, 50)
});
return false;
})
.on('click', function () {
if (fMove) {
return false
}
});
} else {
strWrap.addClass('no_drag');
};
}
} else {
strWrap.addClass('str_static');
}
};
};
if (p.direction == 'right') {
strWrap.height(strMove.outerHeight())
strWrap.addClass('str_right');
strMove.css({
left: -strMove.width(),
right: 'auto'
})
if (strMove.width() > strWrap.width()) {
var leftPos = strWrap.width();
strMove.css({
left: 0
})
if (p.circular) {
if (!p.xml) {
circCloneHor()
//Определяем крайнюю точку
leftPos = strMove.width();
}
}
var
k2 = 0;
timeFunc = function () {
var
fullS = strWrap.width(), //крайняя точка
time = (fullS / strWrap.data('scrollamount')) * 1000; //время
if (parseFloat(strMove.css('left')) != 0) {
fullS = (strMove.width() + strWrap.width());
time = (fullS - (strMove.width() + parseFloat(strMove.css('left')))) / strWrap.data('scrollamount') * 1000;
}
return time;
};
var moveFunc = function () {
if (loop != 0) {
strMove.animate({
left: leftPos
}, timeFunc(), 'linear', function () {
$(this).css({
left: -strMove.width()
});
if (loop == -1) {
setTimeout(moveFunc, p.scrolldelay);
} else {
loop--;
setTimeout(moveFunc, p.scrolldelay);
};
});
};
};
strWrap.data({
moveF : moveFunc
})
if(!p.inverthover){
moveFunc();
}
if (p.hoverstop) {
strWrap.on(enterEvent, function () {
$(this).addClass('str_active');
strMove.stop(true);
}).on(leaveEvent, function () {
$(this).removeClass('str_active');
$(this).off('mousemove');
moveFunc();
});
if (p.drag) {
strWrap.on('mousedown', function (e) {
if(p.inverthover){
strMove.stop(true);
}
//drag
var dragLeft;
var dir = 1;
var newX;
var oldX = e.clientX;
//drag
strMoveLeft = strMove.position().left;
k2 = strMoveLeft - (e.clientX - strWrap.offset().left);
$(this).on('mousemove', function (e) {
fMove = true;
//drag
newX = e.clientX;
if(newX > oldX){
dir = 1
}else{
dir = -1
}
oldX = newX
dragLeft = k2 + (e.clientX - strWrap.offset().left);
if (!p.circular) {
if(dragLeft < -strMove.width() && dir < 0){
dragLeft = strWrap.width();
strMoveLeft = strMove.position().left;
k2 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
if(dragLeft > strWrap.width() && dir > 0){
dragLeft = -strMove.width();
strMoveLeft = strMove.position().left;
k2 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
}else{
if(dragLeft < -strMove.width() && dir < 0){
dragLeft = 0;
strMoveLeft = strMove.position().left;
k2 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
if(dragLeft > 0 && dir > 0){
dragLeft = -strMove.width();
strMoveLeft = strMove.position().left;
k2 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
}
strMove.stop(true).css({
left: dragLeft
});
}).on('mouseup', function () {
if(p.inverthover){
strMove.trigger('mouseenter')
}
$(this).off('mousemove');
setTimeout(function () {
fMove = false
}, 50)
});
return false;
})
.on('click', function () {
if (fMove) {
return false
}
});
} else {
strWrap.addClass('no_drag');
};
}
} else {
if (p.runshort) {
var k2 = 0;
var timeFunc = function () {
time = (strWrap.width() - strMove.position().left) / strWrap.data('scrollamount') * 1000;
return time;
};
var moveFunc = function () {
var leftPos = strWrap.width();
strMove.animate({
left: leftPos
}, timeFunc(), 'linear', function () {
$(this).css({
left: -strMove.width()
});
if (loop == -1) {
setTimeout(moveFunc, p.scrolldelay);
} else {
loop--;
setTimeout(moveFunc, p.scrolldelay);
};
});
};
strWrap.data({
moveF : moveFunc
})
if(!p.inverthover){
moveFunc();
}
if (p.hoverstop) {
strWrap.on(enterEvent, function () {
$(this).addClass('str_active');
strMove.stop(true);
}).on(leaveEvent, function () {
$(this).removeClass('str_active');
$(this).off('mousemove');
moveFunc();
});
if (p.drag) {
strWrap.on('mousedown', function (e) {
if(p.inverthover){
strMove.stop(true);
}
//drag
var dragLeft;
var dir = 1;
var newX;
var oldX = e.clientX;
//drag
strMoveLeft = strMove.position().left;
k2 = strMoveLeft - (e.clientX - strWrap.offset().left);
$(this).on('mousemove', function (e) {
fMove = true;
//drag
newX = e.clientX;
if(newX > oldX){
dir = 1
}else{
dir = -1
}
oldX = newX
dragLeft = k2 + (e.clientX - strWrap.offset().left);
if(dragLeft < -strMove.width() && dir < 0){
dragLeft = strWrap.width();
strMoveLeft = strMove.position().left;
k2 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
if(dragLeft > strWrap.width() && dir > 0){
dragLeft = -strMove.width();
strMoveLeft = strMove.position().left;
k2 = strMoveLeft - (e.clientX - strWrap.offset().left);
}
strMove.stop(true).css({
left:dragLeft
});
}).on('mouseup', function () {
if(p.inverthover){
strMove.trigger('mouseenter')
}
$(this).off('mousemove');
setTimeout(function () {
fMove = false
}, 50)
});
return false;
})
.on('click', function () {
if (fMove) {
return false
}
});
} else {
strWrap.addClass('no_drag');
};
}
} else {
strWrap.addClass('str_static');
}
};
};
if (p.direction == 'up') {
strWrap.addClass('str_vertical');
if (strMove.height() > strWrap.height()) {
var topPos = -strMove.height();
if (p.circular) {
if (!p.xml) {
circCloneVert();
topPos = -(strMove.height() + (strMove.height() - strWrap.height()));
}
}
if (p.xml) {
strMove.css({
top:strWrap.height()
})
}
var
k2 = 0;
timeFunc = function () {
var
fullS = Math.abs(topPos),
time = (fullS / strWrap.data('scrollamount')) * 1000;
if (parseFloat(strMove.css('top')) != 0) {
fullS = (fullS + strWrap.height());
time = (fullS - (strWrap.height() - parseFloat(strMove.css('top')))) / strWrap.data('scrollamount') * 1000;
}
return time;
};
var moveFunc = function () {
if (loop != 0) {
strMove.animate({
top: topPos
}, timeFunc(), 'linear', function () {
$(this).css({
top: strWrap.height()
});
if (loop == -1) {
setTimeout(moveFunc, p.scrolldelay);
} else {
loop--;
setTimeout(moveFunc, p.scrolldelay);
};
});
};
};
strWrap.data({
moveF : moveFunc
})
if(!p.inverthover){
moveFunc();
}
if (p.hoverstop) {
strWrap.on(enterEvent, function () {
$(this).addClass('str_active');
strMove.stop(true);
}).on(leaveEvent, function () {
$(this).removeClass('str_active');
$(this).off('mousemove');
moveFunc();
});
if (p.drag) {
strWrap.on('mousedown', function (e) {
if(p.inverthover){
strMove.stop(true);
}
//drag
var dragTop;
var dir = 1;
var newY;
var oldY = e.clientY;
//drag
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
$(this).on('mousemove', function (e) {
fMove = true;
//drag
newY = e.clientY;
if(newY > oldY){
dir = 1
}else{
if(newY < oldY){
dir = -1
}
}
oldY = newY
dragTop = k2 + e.clientY - strWrap.offset().top;
if (!p.circular){
if(dragTop < -strMove.height() && dir < 0){
dragTop = strWrap.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
if(dragTop > strWrap.height() && dir > 0){
dragTop = -strMove.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
}else{
if(dragTop < -strMove.height() && dir < 0){
dragTop = 0;
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
if(dragTop > 0 && dir > 0){
dragTop = -strMove.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
}
strMove.stop(true).css({
top: dragTop
});
//drag
}).on('mouseup', function () {
if(p.inverthover){
strMove.trigger('mouseenter')
}
$(this).off('mousemove');
setTimeout(function () {
fMove = false
}, 50)
});
return false;
})
.on('click', function () {
if (fMove) {
return false
}
});
} else {
strWrap.addClass('no_drag');
};
}
} else {
if (p.runshort) {
strMove.css({
top: strWrap.height()
});
var k2 = 0;
var timeFunc = function () {
time = (strMove.height() + strMove.position().top) / strWrap.data('scrollamount') * 1000;
return time;
};
var moveFunc = function () {
var topPos = -strMove.height();
strMove.animate({
top: topPos
}, timeFunc(), 'linear', function () {
$(this).css({
top: strWrap.height()
});
if (loop == -1) {
setTimeout(moveFunc, p.scrolldelay);
} else {
loop--;
setTimeout(moveFunc, p.scrolldelay);
};
});
};
strWrap.data({
moveF : moveFunc
})
if(!p.inverthover){
moveFunc();
}
if (p.hoverstop) {
strWrap.on(enterEvent, function () {
$(this).addClass('str_active');
strMove.stop(true);
}).on(leaveEvent, function () {
$(this).removeClass('str_active');
$(this).off('mousemove');
moveFunc();
});
if (p.drag) {
strWrap.on('mousedown', function (e) {
if(p.inverthover){
strMove.stop(true);
}
//drag
var dragTop;
var dir = 1;
var newY;
var oldY = e.clientY;
//drag
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
$(this).on('mousemove', function (e) {
fMove = true;
//drag
newY = e.clientY;
if(newY > oldY){
dir = 1
}else{
if(newY < oldY){
dir = -1
}
}
oldY = newY
dragTop = k2 + e.clientY - strWrap.offset().top;
if(dragTop < -strMove.height() && dir < 0){
dragTop = strWrap.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
if(dragTop > strWrap.height() && dir > 0){
dragTop = -strMove.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
//*drag
strMove.stop(true).css({
top: dragTop
});
}).on('mouseup', function () {
if(p.inverthover){
strMove.trigger('mouseenter')
}
$(this).off('mousemove');
setTimeout(function () {
fMove = false
}, 50)
});
return false;
})
.on('click', function () {
if (fMove) {
return false
}
});
} else {
strWrap.addClass('no_drag');
};
}
} else {
strWrap.addClass('str_static');
}
};
};
if (p.direction == 'down') {
strWrap.addClass('str_vertical').addClass('str_down');
strMove.css({
top: -strMove.height(),
bottom: 'auto'
})
if (strMove.height() > strWrap.height()) {
var topPos = strWrap.height();
if (p.circular) {
if (!p.xml) {
circCloneVert();
topPos = strMove.height();
}
}
if (p.xml) {
strMove.css({
top:-strMove.height()
})
}
var
k2 = 0;
timeFunc = function () {
var
fullS = strWrap.height(), //крайняя точка
time = (fullS / strWrap.data('scrollamount')) * 1000; //время
if (parseFloat(strMove.css('top')) != 0) {
fullS = (strMove.height() + strWrap.height());
time = (fullS - (strMove.height() + parseFloat(strMove.css('top')))) / strWrap.data('scrollamount') * 1000;
}
return time;
};
var moveFunc = function () {
if (loop != 0) {
strMove.animate({
top: topPos
}, timeFunc(), 'linear', function () {
$(this).css({
top: -strMove.height()
});
if (loop == -1) {
setTimeout(moveFunc, p.scrolldelay);
} else {
loop--;
setTimeout(moveFunc, p.scrolldelay);
};
});
};
};
strWrap.data({
moveF : moveFunc
})
if(!p.inverthover){
moveFunc();
}
if (p.hoverstop) {
strWrap.on(enterEvent, function () {
$(this).addClass('str_active');
strMove.stop(true);
}).on(leaveEvent, function () {
$(this).removeClass('str_active');
$(this).off('mousemove');
moveFunc();
});
if (p.drag) {
strWrap.on('mousedown', function (e) {
if(p.inverthover){
strMove.stop(true);
}
//drag
var dragTop;
var dir = 1;
var newY;
var oldY = e.clientY;
//drag
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
$(this).on('mousemove', function (e) {
fMove = true;
//drag
newY = e.clientY;
if(newY > oldY){
dir = 1
}else{
if(newY < oldY){
dir = -1
}
}
oldY = newY
dragTop = k2 + e.clientY - strWrap.offset().top;
if (!p.circular){
if(dragTop < -strMove.height() && dir < 0){
dragTop = strWrap.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
if(dragTop > strWrap.height() && dir > 0){
dragTop = -strMove.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
}else{
if(dragTop < -strMove.height() && dir < 0){
dragTop = 0;
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
if(dragTop > 0 && dir > 0){
dragTop = -strMove.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
}
strMove.stop(true).css({
top: dragTop
});
//drag
}).on('mouseup', function () {
if(p.inverthover){
strMove.trigger('mouseenter')
}
$(this).off('mousemove');
setTimeout(function () {
fMove = false
}, 50)
});
return false;
})
.on('click', function () {
if (fMove) {
return false
}
});
} else {
strWrap.addClass('no_drag');
};
}
} else {
if (p.runshort) {
var k2 = 0;
var timeFunc = function () {
time = (strWrap.height() - strMove.position().top) / strWrap.data('scrollamount') * 1000;
return time;
};
var moveFunc = function () {
var topPos = strWrap.height();
strMove.animate({
top: topPos
}, timeFunc(), 'linear', function () {
$(this).css({
top: -strMove.height()
});
if (loop == -1) {
setTimeout(moveFunc, p.scrolldelay);
} else {
loop--;
setTimeout(moveFunc, p.scrolldelay);
};
});
};
strWrap.data({
moveF : moveFunc
})
if(!p.inverthover){
moveFunc();
}
if (p.hoverstop) {
strWrap.on(enterEvent, function () {
$(this).addClass('str_active');
strMove.stop(true);
}).on(leaveEvent, function () {
$(this).removeClass('str_active');
$(this).off('mousemove');
moveFunc();
});
if (p.drag) {
strWrap.on('mousedown', function (e) {
if(p.inverthover){
strMove.stop(true);
}
//drag
var dragTop;
var dir = 1;
var newY;
var oldY = e.clientY;
//drag
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
$(this).on('mousemove', function (e) {
fMove = true;
//drag
newY = e.clientY;
if(newY > oldY){
dir = 1
}else{
if(newY < oldY){
dir = -1
}
}
oldY = newY
dragTop = k2 + e.clientY - strWrap.offset().top;
if(dragTop < -strMove.height() && dir < 0){
dragTop = strWrap.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
if(dragTop > strWrap.height() && dir > 0){
dragTop = -strMove.height();
strMoveTop = strMove.position().top;
k2 = strMoveTop - (e.clientY - strWrap.offset().top);
}
//*drag
strMove.stop(true).css({
top: dragTop
});
}).on('mouseup', function () {
if(p.inverthover){
strMove.trigger('mouseenter')
}
$(this).off('mousemove');
setTimeout(function () {
fMove = false
}, 50)
})
return false;
})
.on('click', function () {
if (fMove) {
return false
}
});
} else {
strWrap.addClass('no_drag');
};
}
} else {
strWrap.addClass('str_static');
}
};
};
}
if (p.xml) {
$.ajax({
url: p.xml,
dataType: "xml",
success: function (xml) {
var xmlTextEl = $(xml).find('text');
var xmlTextLength = xmlTextEl.length;
for(var i = 0; i < xmlTextLength; i++){
var xmlElActive = xmlTextEl.eq(i);
var xmlElContent = xmlElActive.text();
var xmlItemEl = $('').text(xmlElContent).appendTo(strWrap);
if(p.direction == 'left' || p.direction == 'right'){
xmlItemEl.css({display:'inline-block',textAlign:'right'});
if(i > 0){
xmlItemEl.css({width:strWrap.width()+xmlItemEl.width()});
}
}
if(p.direction == 'down' || p.direction == 'up'){
xmlItemEl.css({display:'block',textAlign:'left'});
if(i > 0){
xmlItemEl.css({paddingTop:strWrap.height()});
}
}
}
code();
}
});
} else {
code();
}
strWrap.data({
ini:code,
startheight: startHeight
})
});
},
update: function () {
var el = $(this);
var str_origin = $('.str_origin',el);
var str_move_clone = $('.str_move_clone',el);
str_origin.stop(true);
str_move_clone.remove();
el.data('ini')();
},
destroy: function () {
var el = $(this);
var elMove = $('.str_move',el);
var startHeight = el.data('startheight');
$('.str_move_clone',el).remove();
el.off('mouseenter');
el.off('mousedown');
el.off('mouseup');
el.off('mouseleave');
el.off('mousemove');
el.removeClass('noStop').removeClass('str_vertical').removeClass('str_active').removeClass('no_drag').removeClass('str_static').removeClass('str_right').removeClass('str_down');
var elStyle = el.attr('style');
if(elStyle){
var styleArr = elStyle.split(';');
for(var i=0; i < styleArr.length; i++){
var str = $.trim(styleArr[i]);
var tested = str.search(/^height/g);
if(tested != -1){
styleArr[i] = '';
}
}
var newArr = styleArr.join(';');
var newStyle = newArr.replace(/;+/g,';')
if(newStyle == ';'){
el.removeAttr('style');
}else{
el.attr('style',newStyle);
}
if(startHeight){
el.css({height:startHeight})
}
}
elMove.stop(true);
if(elMove.length){
var context = elMove.html();
elMove.remove();
el.html(context);
}
},
pause: function(){
var el = $(this);
var elMove = $('.str_move',el);
elMove.stop(true);
},
play: function(){
var el = $(this);
$(this).off('mousemove');
el.data('moveF')();
}
};
$.fn.liMarquee = function (method) {
if (methods[method]) {
return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
} else if (typeof method === 'object' || !method) {
return methods.init.apply(this, arguments);
} else {
$.error('Метод ' + method + ' в jQuery.liMarquee не существует');
}
};
})(jQuery);
/*! WOW - v1.1.3 - 2016-05-06
* Copyright (c) 2016 Matthieu Aussaguel;*/(function(){var a,b,c,d,e,f=function(a,b){return function(){return a.apply(b,arguments)}},g=[].indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(b in this&&this[b]===a)return b;return-1};b=function(){function a(){}return a.prototype.extend=function(a,b){var c,d;for(c in b)d=b[c],null==a[c]&&(a[c]=d);return a},a.prototype.isMobile=function(a){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(a)},a.prototype.createEvent=function(a,b,c,d){var e;return null==b&&(b=!1),null==c&&(c=!1),null==d&&(d=null),null!=document.createEvent?(e=document.createEvent("CustomEvent"),e.initCustomEvent(a,b,c,d)):null!=document.createEventObject?(e=document.createEventObject(),e.eventType=a):e.eventName=a,e},a.prototype.emitEvent=function(a,b){return null!=a.dispatchEvent?a.dispatchEvent(b):b in(null!=a)?a[b]():"on"+b in(null!=a)?a["on"+b]():void 0},a.prototype.addEvent=function(a,b,c){return null!=a.addEventListener?a.addEventListener(b,c,!1):null!=a.attachEvent?a.attachEvent("on"+b,c):a[b]=c},a.prototype.removeEvent=function(a,b,c){return null!=a.removeEventListener?a.removeEventListener(b,c,!1):null!=a.detachEvent?a.detachEvent("on"+b,c):delete a[b]},a.prototype.innerHeight=function(){return"innerHeight"in window?window.innerHeight:document.documentElement.clientHeight},a}(),c=this.WeakMap||this.MozWeakMap||(c=function(){function a(){this.keys=[],this.values=[]}return a.prototype.get=function(a){var b,c,d,e,f;for(f=this.keys,b=d=0,e=f.length;e>d;b=++d)if(c=f[b],c===a)return this.values[b]},a.prototype.set=function(a,b){var c,d,e,f,g;for(g=this.keys,c=e=0,f=g.length;f>e;c=++e)if(d=g[c],d===a)return void(this.values[c]=b);return this.keys.push(a),this.values.push(b)},a}()),a=this.MutationObserver||this.WebkitMutationObserver||this.MozMutationObserver||(a=function(){function a(){"undefined"!=typeof console&&null!==console&&console.warn("MutationObserver is not supported by your browser."),"undefined"!=typeof console&&null!==console&&console.warn("WOW.js cannot detect dom mutations, please call .sync() after loading new content.")}return a.notSupported=!0,a.prototype.observe=function(){},a}()),d=this.getComputedStyle||function(a,b){return this.getPropertyValue=function(b){var c;return"float"===b&&(b="styleFloat"),e.test(b)&&b.replace(e,function(a,b){return b.toUpperCase()}),(null!=(c=a.currentStyle)?c[b]:void 0)||null},this},e=/(\-([a-z]){1})/g,this.WOW=function(){function e(a){null==a&&(a={}),this.scrollCallback=f(this.scrollCallback,this),this.scrollHandler=f(this.scrollHandler,this),this.resetAnimation=f(this.resetAnimation,this),this.start=f(this.start,this),this.scrolled=!0,this.config=this.util().extend(a,this.defaults),null!=a.scrollContainer&&(this.config.scrollContainer=document.querySelector(a.scrollContainer)),this.animationNameCache=new c,this.wowEvent=this.util().createEvent(this.config.boxClass)}return e.prototype.defaults={boxClass:"wow",animateClass:"animated",offset:0,mobile:!0,live:!0,callback:null,scrollContainer:null},e.prototype.init=function(){var a;return this.element=window.document.documentElement,"interactive"===(a=document.readyState)||"complete"===a?this.start():this.util().addEvent(document,"DOMContentLoaded",this.start),this.finished=[]},e.prototype.start=function(){var b,c,d,e;if(this.stopped=!1,this.boxes=function(){var a,c,d,e;for(d=this.element.querySelectorAll("."+this.config.boxClass),e=[],a=0,c=d.length;c>a;a++)b=d[a],e.push(b);return e}.call(this),this.all=function(){var a,c,d,e;for(d=this.boxes,e=[],a=0,c=d.length;c>a;a++)b=d[a],e.push(b);return e}.call(this),this.boxes.length)if(this.disabled())this.resetStyle();else for(e=this.boxes,c=0,d=e.length;d>c;c++)b=e[c],this.applyStyle(b,!0);return this.disabled()||(this.util().addEvent(this.config.scrollContainer||window,"scroll",this.scrollHandler),this.util().addEvent(window,"resize",this.scrollHandler),this.interval=setInterval(this.scrollCallback,50)),this.config.live?new a(function(a){return function(b){var c,d,e,f,g;for(g=[],c=0,d=b.length;d>c;c++)f=b[c],g.push(function(){var a,b,c,d;for(c=f.addedNodes||[],d=[],a=0,b=c.length;b>a;a++)e=c[a],d.push(this.doSync(e));return d}.call(a));return g}}(this)).observe(document.body,{childList:!0,subtree:!0}):void 0},e.prototype.stop=function(){return this.stopped=!0,this.util().removeEvent(this.config.scrollContainer||window,"scroll",this.scrollHandler),this.util().removeEvent(window,"resize",this.scrollHandler),null!=this.interval?clearInterval(this.interval):void 0},e.prototype.sync=function(b){return a.notSupported?this.doSync(this.element):void 0},e.prototype.doSync=function(a){var b,c,d,e,f;if(null==a&&(a=this.element),1===a.nodeType){for(a=a.parentNode||a,e=a.querySelectorAll("."+this.config.boxClass),f=[],c=0,d=e.length;d>c;c++)b=e[c],g.call(this.all,b)<0?(this.boxes.push(b),this.all.push(b),this.stopped||this.disabled()?this.resetStyle():this.applyStyle(b,!0),f.push(this.scrolled=!0)):f.push(void 0);return f}},e.prototype.show=function(a){return this.applyStyle(a),a.className=a.className+" "+this.config.animateClass,null!=this.config.callback&&this.config.callback(a),this.util().emitEvent(a,this.wowEvent),this.util().addEvent(a,"animationend",this.resetAnimation),this.util().addEvent(a,"oanimationend",this.resetAnimation),this.util().addEvent(a,"webkitAnimationEnd",this.resetAnimation),this.util().addEvent(a,"MSAnimationEnd",this.resetAnimation),a},e.prototype.applyStyle=function(a,b){var c,d,e;return d=a.getAttribute("data-wow-duration"),c=a.getAttribute("data-wow-delay"),e=a.getAttribute("data-wow-iteration"),this.animate(function(f){return function(){return f.customStyle(a,b,d,c,e)}}(this))},e.prototype.animate=function(){return"requestAnimationFrame"in window?function(a){return window.requestAnimationFrame(a)}:function(a){return a()}}(),e.prototype.resetStyle=function(){var a,b,c,d,e;for(d=this.boxes,e=[],b=0,c=d.length;c>b;b++)a=d[b],e.push(a.style.visibility="visible");return e},e.prototype.resetAnimation=function(a){var b;return a.type.toLowerCase().indexOf("animationend")>=0?(b=a.target||a.srcElement,b.className=b.className.replace(this.config.animateClass,"").trim()):void 0},e.prototype.customStyle=function(a,b,c,d,e){return b&&this.cacheAnimationName(a),a.style.visibility=b?"hidden":"visible",c&&this.vendorSet(a.style,{animationDuration:c}),d&&this.vendorSet(a.style,{animationDelay:d}),e&&this.vendorSet(a.style,{animationIterationCount:e}),this.vendorSet(a.style,{animationName:b?"none":this.cachedAnimationName(a)}),a},e.prototype.vendors=["moz","webkit"],e.prototype.vendorSet=function(a,b){var c,d,e,f;d=[];for(c in b)e=b[c],a[""+c]=e,d.push(function(){var b,d,g,h;for(g=this.vendors,h=[],b=0,d=g.length;d>b;b++)f=g[b],h.push(a[""+f+c.charAt(0).toUpperCase()+c.substr(1)]=e);return h}.call(this));return d},e.prototype.vendorCSS=function(a,b){var c,e,f,g,h,i;for(h=d(a),g=h.getPropertyCSSValue(b),f=this.vendors,c=0,e=f.length;e>c;c++)i=f[c],g=g||h.getPropertyCSSValue("-"+i+"-"+b);return g},e.prototype.animationName=function(a){var b;try{b=this.vendorCSS(a,"animation-name").cssText}catch(c){b=d(a).getPropertyValue("animation-name")}return"none"===b?"":b},e.prototype.cacheAnimationName=function(a){return this.animationNameCache.set(a,this.animationName(a))},e.prototype.cachedAnimationName=function(a){return this.animationNameCache.get(a)},e.prototype.scrollHandler=function(){return this.scrolled=!0},e.prototype.scrollCallback=function(){var a;return!this.scrolled||(this.scrolled=!1,this.boxes=function(){var b,c,d,e;for(d=this.boxes,e=[],b=0,c=d.length;c>b;b++)a=d[b],a&&(this.isVisible(a)?this.show(a):e.push(a));return e}.call(this),this.boxes.length||this.config.live)?void 0:this.stop()},e.prototype.offsetTop=function(a){for(var b;void 0===a.offsetTop;)a=a.parentNode;for(b=a.offsetTop;a=a.offsetParent;)b+=a.offsetTop;return b},e.prototype.isVisible=function(a){var b,c,d,e,f;return c=a.getAttribute("data-wow-offset")||this.config.offset,f=this.config.scrollContainer&&this.config.scrollContainer.scrollTop||window.pageYOffset,e=f+Math.min(this.element.clientHeight,this.util().innerHeight())-c,d=this.offsetTop(a),b=d+a.clientHeight,e>=d&&b>=f},e.prototype.util=function(){return null!=this._util?this._util:this._util=new b},e.prototype.disabled=function(){return!this.config.mobile&&this.util().isMobile(navigator.userAgent)},e}()}).call(this);
/**
*
* @version $Id$
*/
$(window).load(function(){
if (!(/msie [6|7|8|9]/i.test(navigator.userAgent))){
var wow = new WOW({
boxClass: 'wow',
animateClass: 'animated',
offset: 0,
mobile: false,
live: true
});
};
wow.init();
})