PageSourceSearch

https://bin35.ru/bitrix/templates/bin35/assets/js/script.js

js bin35.ru collected 2026-10-07 11:36:43 UTC 12,302 bytes, 348 lines download raw bytes

1(function($) {
2    $(window).on('load', function() {
3        $('#sortSelect').select2({
4            minimumResultsForSearch: Infinity
5        });
6        if (window.innerWidth <= 991) {
7            $('#collapseOtziv').collapse()
8
9        }
10        $('.elSlider').slick({
11            slidesToShow: 1,
12            slidesToScroll: 1,
13            arrows: false,
14            fade: true,
15            asNavFor: '.itemKarus'
16        });
17        $('.itemKarus').slick({
18            slidesToShow: 3,
19            slidesToScroll: 1,
20            asNavFor: '.elSlider',
21            dots: false,
22            infinite: false,
23            centerMode: false,
24            focusOnSelect: true,
25            vertical: true,
26            arrows: true,
27            swipe: false,
28            responsive: [{
29                    breakpoint: 1024,
30                    settings: {
31                        slidesToShow: 2,
32                        slidesToScroll: 2,
33                        infinite: false,
34                        dots: true
35                    }
36                },
37                {
38                    breakpoint: 600,
39                    settings: {
40                        slidesToShow: 2,
41                        slidesToScroll: 2
42                    }
43                },
44                {
45                    breakpoint: 480,
46                    settings: {
47                        slidesToShow: 1,
48                        slidesToScroll: 1
49                    }
50                }
51            ]
52        });
53        let images_chois_value = document.querySelectorAll('.images_chois_value')
54        let images_value = document.querySelector('.content_choice_color .images_value img')
55        images_chois_value.forEach(images_chois_item => {
56            let item = images_chois_item.querySelector('img')
57            item.addEventListener('click', (e) => {
58                images_chois_value.forEach(color => {
59                    color.classList.remove('active')
60                });
61                let src = item.src
62                item.parentNode.classList.add('active')
63                images_value.src = src
64            })
65        });
66        $('.news-block--items').owlCarousel({
67            loop: false,
68            rewind: true,
69            nav: false,
70            dots: true,
71            navText: [
72                '',
73                ''
74            ],
75            responsive: {
76                0: {
77                    items: 1
78                },
79                600: {
80                    items: 1
81                },
82                1000: {
83                    items: 1
84                }
85            }
86        })
87        $('.slider_card').owlCarousel({
88            loop: false,
89            rewind: true,
90            margin: 30,
91            nav: true,
92            dots: false,
93            navText: [
94                '',
95                ''
96            ],
97            responsive: {
98                0: {
99                    items: 1
100                },
101                600: {
102                    items: 2
103                },
104                1000: {
105                    items: 4
106                }
107            }
108        })
109        $('.slider-front .slider-wrapper .slide-items').owlCarousel({
110            loop: true,
111            rewind: true,
112            margin: 30,
113            nav: true,
114            dots: false,
115            autoplay: true,
116            autoplayTimeout: 5000,
117            autoplayHoverPause: true,
118            navText: [
119                '',
120                ''
121            ],
122            responsive: {
123                0: {
124                    items: 1,
125                    dots: true,
126                },
127                768: {
128                    items: 1,
129                    dots: true,
130                },
131                1000: {
132                    items: 1
133                }
134            }
135        })
136
137        if( $('.header_top-bar').length ) {
138            ym(30354652,'reachGoal','pokaz_topbar')
139            $(document).on('scroll', function () {
140                if ($(document).scrollTop() > $('.topbar').height() + $('header').height()) {
141                    $('.header_top-bar').show()
142                } else {
143                    $('.header_top-bar').hide()
144                }
145            })
146            $('.header_top-bar').find('.headerTopBar-close').on('click', function (){
147                $('.header_top-bar').remove()
148                document.cookie = 'topbarClosed=true; max-age=${24 * 60 * 60}; path=/'
149            })
150        }
151    });
152    let positions_img = document.querySelector('.discount_card .positions_img')
153    if (positions_img) {
154        positions_img.addEventListener('click', (event) => { //событие клик на кнопку
155            let card_product_items = document.querySelector('.card_product_items')
156            card_product_items.classList.toggle('fold')
157            positions_img.classList.toggle('active')
158        });
159    }
160    let filterActions = document.querySelector('.filter--actions-unfold')
161    let categoryActions = document.querySelector('.category--actions-unfold')
162    if (filterActions) {
163        filterActions.addEventListener('click', (event) => { //событие клик на кнопку
164            let filter = document.querySelector('.filter')
165            filter.classList.toggle('fold')
166        });
167    }
168    if (categoryActions) {
169        categoryActions.addEventListener('click', (event) => { //событие клик на кнопку
170            let category_menu = document.querySelector('.category_menu')
171            category_menu.classList.toggle('fold')
172        });
173    }
174    let inputValue = document.querySelectorAll('.card__count');
175    inputValue.forEach(input => {
176        let btnValue = input.querySelector('.btn__input_item')
177        let inputItem = input.querySelector('.card__count__input')
178        let btnBot = input.querySelector('.btn__botton');
179        btnValue.addEventListener('click', (event) => { //событие клик на кнопку
180            inputItem.value = ++inputItem.value;
181        });
182        btnBot.addEventListener('click', (event) => { //событие клик на кнопку
183            if (inputItem.value != 0 || inputItem.value != "0") {
184                inputItem.value = --inputItem.value;
185            }
186        });
187    });
188    $(document).ready(function() {
189        if (window.innerWidth <= 991) {
190            console.log($('.category_menu_content_depth2.show'))
191            $('.category_menu_content_depth2.show').removeClass('show')
192
193
194
195        }
196        $(".category_menu_content > .category_item_list  > .category_link").click(function(event) {
197
198            //console.log(this)
199            let showMenu = $(this).siblings();
200            if (showMenu.length > 0) {
201                event.preventDefault();
202                showMenu.collapse('toggle')
203            }
204
205        });
206        fixedMenu();
207        let inputValue = document.querySelectorAll('.card_btns');
208        //console.log(inputValue)
209        inputValue.forEach(input => {
210            let btnPlus = input.querySelector('.card_btn_item_up')
211            let inputItem = input.querySelector('.card_number')
212                //console.log(inputItem)
213            inputItem.innerHTML = inputItem.dataset.number
214            let btnMinus = input.querySelector('.card_btn_item_down');
215            btnMinus.addEventListener('click', (event) => { //событие клик на кнопку               
216                if (inputItem.dataset.avil > 0) {
217                    inputItem.dataset.number = ++inputItem.dataset.number
218                    inputItem.innerHTML = inputItem.dataset.number
219                }
220            });
221            btnPlus.addEventListener('click', (event) => { //событие клик на кнопку
222                if (inputItem.dataset.number != 0 || inputItem.dataset.number != "0") {
223                    inputItem.dataset.number = --inputItem.dataset.number
224                    inputItem.innerHTML = inputItem.dataset.number
225                }
226            });
227        });
228    });
229
230    function fixedMenu() {
231        $(window).scroll(function() {
232            if ($(this).scrollTop() > $('header.header').outerHeight() + 10) {
233                $('.header-fixed').addClass('active');
234            } else {
235                $('.header-fixed').removeClass('active');
236            }
237        });
238    }
239    $("#mobLkEnter").on("click", function() {
240        $('#pills-tab a[href="#entry1"]').tab('show');
241    });
242    $("#mobLkReg").on("click", function() {
243        $('#pills-tab a[href="#registration"]').tab('show');
244    })
245    $('#fullImg').on('show.bs.modal', function(event) {
246        var button = $(event.relatedTarget) // Button that triggered the modal
247        var recipient = button.data('imgsrc') // Extract info from data-* attributes
248            // If necessary, you could initiate an AJAX request here (and then do the updating in a callback).
249            // Update the modal's content. We'll use jQuery here, but you could use a data binding library or other methods instead.
250        var modal = $(this)
251        modal.find('.imgmodalfull').attr("src", recipient);
252    })
253
254})(this.jQuery);
255
256
257sipuniCalltracking({
258    callback: substCallback,
259    //cookie_ttl_days: 0,
260    // cookie_key: 'test1',
261    sources: {
262        'yadirectpoisk': { 'utm_source': 'yandexdirectpoisk' },
263        'yadirectrsya': { 'utm_source': 'yandexdirectrekset' },
264        'googleadscontext': { 'utm_source': 'googleadscontext' },
265        'googleadspoisk': { 'utm_source': 'googleadspoisk' },
266        'mycom': { 'utm_source': 'mycom' },
267        'vkontakte': { 'utm_source': 'vkontakte' }
268    },
269    phones: [
270        { 'src': 'yadirectpoisk', 'phone': ['88007007547', '8 (800) 700-75-47'] },
271        { 'src': 'yadirectrsya', 'phone': ['88007006329', '8 (800) 700-63-29'] },
272        { 'src': 'googleadscontext', 'phone': ['88007007542', '8 (800) 700-75-42'] },
273        { 'src': 'googleadspoisk', 'phone': ['88007003758', '8 (800) 700-37-58'] },
274        { 'src': 'mycom', 'phone': ['88007005743', '8 (800) 700-57-43'] },
275        { 'src': 'vkontakte', 'phone': ['88007003054', '8 (800) 700-30-54'] },
276    ],
277    pattern: '# (###) ###-##-##'
278}, window);
279
280function substCallback(p) {
281    if (p) {
282        //document.getElementById('top_phone').innerText=someComplexModification(p.phone[0]);
283        //console.log(p)
284        $(".phone-link").attr("href", "tel:" + p.phone[0]);
285        $(".chPhone").html(p.phone[1]);
286    }
287}
288
289$(window).scroll(function() {
290    scrollPos = $(this).scrollTop();
291    //console.log(scrollPos);
292    if (scrollPos > 50) {
293        $(".btn-call-mob").addClass("active");
294    }
295});
296//Цели на виджет б24
297setTimeout(function() {
298    $('.b24-widget-button-wrapper').click(function() {
299        ym(30354652, 'reachGoal', 'clik_widdget_obratnayasvaz_all');
300    });
301    $('div[data-b24-crm-button-icon="crmform"]').click(function() {
302        ym(30354652, 'reachGoal', 'clik_widdget_obratnayasvaz');
303    });
304    $('#b24-b24-site-button-form-4 form').submit(function() {
305        ym(30354652, 'reachGoal', 'otpravka_form_obratnayasvaz');
306    });
307    $('div[data-b24-crm-button-icon="openline"]').click(function() {
308        ym(30354652, 'reachGoal', 'clik_widdget_onlinechat');
309    });
310    /*$('.b24-widget-button-wrapper').click(function(){
311    	ym(30354652,'reachGoal','send_onlinechat');
312    });*/
313}, 10000);
314
315let show_on_scroll_menu = $('.show-on-scroll-menu');
316
317if ($(window).width() >= 1200) {
318    if (window.window > $('#js-nav-scroll').outerHeight()) {
319        show_on_scroll_menu.show();
320        $('.header--logo').css({
321            'margin-right': '0'
322        });
323    }
324    $(window).on('scroll', function() {
325        if (window.scrollY > $('#js-nav-scroll').outerHeight()) {
326            show_on_scroll_menu.show();
327            $('.header--logo').css({
328                'margin-right': '0'
329            });
330        } else {
331            show_on_scroll_menu.hide();
332            $('.header--logo').css({
333                'margin-right': '71px'
334            });
335        }
336
337    });
338}
339function ourReviewsBlock() {
340    $('.js-our-reviews-all').on('click', function () {
341        $('.js-our-reviews').toggleClass('opened');
342    });
343
344    $('.js-item-reviews-more').on('click', function () {
345        $(this).closest('.our-reviews__item').toggleClass('opened');
346    });
347}
348ourReviewsBlock();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.