JQ

Slick slider или много слайдеров и картинок

Опубликовано: 24.05.2019 в 15:03

Автор:

Категории: JQ,Бложег

Была ситуация когда предыдущий разработчик умудрился встроить на странице сайта более 20 слайдеров, представьте как тормозила страница…
Пришлось решать

$.fn.toggleClick = function(funcArray) {
return this.click(function() {
var elem = $(this);
var index = elem.data('index') || 0;

funcArray[index]();
elem.data('index', (index + 1) % funcArray.length);
});
};

$('.btn').toggleClick([
function() {
$('.slider-1').slick();
}, function() {
$('.slider-3').slick();
}, function() {
$('.slider-3').slick();
}, function() {
$('.slider-3').slick();
}
]);

Что делает данный код ? Здесь счетчик кликов, каждый клик активирует слайдер по очереди (в моём случае был слайдер внутри слайдера в кол-ве 20 штук), вам нужно лишь запускать по очереди + советую активировать lazyLoad

Сохранение клика cookie

Опубликовано: 24.05.2019 в 14:57

Автор:

Категории: JQ,Бложег

$(document).ready(function() {
$('.navbar-toggle').click();

});
$(document).ready(function(){
if ($.cookie('cookie')) { //if cookie isset

}else{
var CookieSet = $.cookie('cookie', 'value'); //set cookie
$('#ddLocationMenu').click();
}
});

При первом посещении сайта произойдет клик, а при повторном – его не будет
Всё очень просто =)

Slick slider overflow fix

Опубликовано: 10.10.2018 в 17:04

Автор:

Категории: JQ,Бложег,Верстка

Тэги:

Долго не выкладывал посты всяких хаков, столкнулся с такой вот проблемой

У меня при hover должен выскакивать блок с инфой, но slick slider режет его, указал для body overflow-x: hidden, и все бы хорошо, но у слайдера есть контейнер, он не во всю ширину, и вот нагуглил такое единственное решение на css

Помещаем это в css

.slick-list {
overflow: visible!important;
}
.slick-slide {
opacity: 0;
transition: opacity 500ms;
}
.slick-slide.slick-active {
opacity: 1;
}

и указываем в инициализации слайдера параметр (чтобы было все ок с выравниванием)

centerMode: false

и радуемся глазу

:checked не работает

Опубликовано: 07.08.2018 в 17:35

Автор:

Категории: JQ,Бложег,Верстка

Делал чебоксы для сайта, на мобильнике менялась чуть-чуть структура, пришлось скрывать чебоксы на < 1200, и показывать другой блок на < 767, всё бы ничего, но не срабатывали чебоксы на мобильниках, всё аналогичное…странно подумал я.
Оказалось что чебокс был занят и поэтому он не срабатывал (т.к был дубль ID), для того чтобы вернуть работоспособность я просто удалил кусок кода который был скрыт на мобильниках через jq

$(window).resize(function() {
    if ($(window).width() < 768) {
        $(".product-options.hidden-xs").remove()
    }
});

Адаптивные таблицы “на лету” и без велосипедов

Опубликовано: 12.05.2018 в 04:44

Автор:

Категории: JQ,Wordpress,Верстка

Нужна была адаптивная таблица, причем хорошая и без минимум внедрения и настройки, погуглив решения на флексах – понял что флексы еще не так хороши, вспомнил про добрый старый вариант который я использовал в обменнике, через data content, отличный вариант, только внедрять долго, а чего бы не сделать автоматическую подстановку из th ? Погуглив нашел отличное решение!

 

 

See the Pen jxxQRx by true404 (@true404) on CodePen.

Bootstrap Modals + slick slider fix height

Опубликовано: 21.03.2018 в 17:01

Автор:

Категории: JQ

Была проблема – некорректно работал слайдер внутри бустрап окна, в интернете очень много вариантов решения проблемы, но не один из них толком не работает, выкладываю сто процентов рабочий вариант

$('.modal').on('shown.bs.modal', function (e) {
$('.slick-slider').slick('setPosition');
})

$(document).ready работает неправильно

Опубликовано: 13.03.2018 в 16:58

Автор:

Категории: JQ,Верстка

Был у меня код который прорисовывает высоту и прочие css свойства дива в зависимости от картинки, но вот беда – при первом посещении не работал код, при повторном посещении – все замечательно, залил на codepen о чудо, работает однако, но на боевом сайте – хренушки.

$(document).ready(function(){
  resize();
});

Где здесь ошибка ?

А ошибка в том что ‘$(document).ready’ будет выполняться как будет готов DOM, за исключением картинок.
Переписываем на

$(window).load(function() {
  resize();
});

PROFIT!