Фильтр по категориям
Фильтр по всем категориям
Все категории
Категория заболеваний
Все
Категория симптомов
Все
Категория «Образ жизни»
Все
Возрастные группы Категория
Все
Классификация по методам диагностики
Все
Категория по образцу
Все
Сбросить все фильтры
Популярные категории тестов
Доступные тесты
Загрузка...
Загрузка результатов лабораторных анализов...
Прокрутите вниз, чтобы увидеть больше тестов
Ваша корзина пуста
Найдите необходимые анализы и добавьте их в корзину, чтобы начать оформление заказа.
Начать поиск
Результаты не найдены
Попробуйте разные поисковые запросы или просмотрите разделы по категориям.
Очистить поиск
0
Название теста добавлено в корзину!
Продолжить покупки
Просмотреть корзину
{{testName}}: {{price}} THB
Описание: {{description}}
Псевдоним имени: {{alias}}
Образец: {{образец}} | Время выполнения: {{время выполнения}}
Связанные тесты: {{relatedTests}}
{{categories}}
'); printWindow.document.write(''); printWindow.document.close(); printWindow.addEventListener('load', function() { setTimeout(function() { printWindow.print(); setTimeout(function() { printWindow.close(); }, 500); }, 500); }); }); }; LabDOSApp.copyCartAsBulletList = function() { if (!this.cart || this.cart.length === 0) { this.showAchievement('Пустая корзина', 'Пожалуйста, добавьте несколько тестов в корзину перед копированием.'); return; } const bulletList = this.formatCartAsBulletList(); const textarea = document.createElement('textarea'); textarea.value = bulletList; textarea.setAttribute('readonly', ''); textarea.style.position = 'absolute'; textarea.style.left = '-9999px'; document.body.appendChild(textarea); textarea.select(); document.execCommand('copy'); document.body.removeChild(textarea); this.showAchievement('Скопировано в буфер обмена!', 'Элементы корзины скопированы в формате маркированного списка.'); }; LabDOSApp.printCart = function() { if (!this.cart || this.cart.length === 0) { this.showAchievement('Пустая корзина', 'Пожалуйста, добавьте несколько тестов в корзину перед печатью.'); return; } this.showPrintPopup(); }; LabDOSApp.addCartIcons = function() { if ($('#cart-action-icons').length > 0) { return; } const isMobile = window.innerWidth < 768; const iconContainer = `
Распечатать
ОФОРМИТЬ ЗАКАЗ
Копировать список
`; $('#subtotal').parent().after(iconContainer); const self = this; // Привязка события печати (CSS скроет событие на мобильном устройстве) $('#print-cart-btn').on('click', function() { self.printCart.call(self); }); $('#copy-cart-btn').on('click', function() { self.copyCartAsBulletList.call(self); }); }; LabDOSApp.originalRenderCart = LabDOSApp.renderCart; LabDOSApp.renderCart = function(highlightItemName = null) { this.originalRenderCart.call(this, highlightItemName); this.addCartIcons.call(this); }; $(document).ready(function() { setTimeout(function() { if (LabDOSApp && typeof LabDOSApp.addCartIcons === 'function') { LabDOSApp.addCartIcons.call(LabDOSApp); } }, 1000); // Fresh: Toggle labdos-inview class and handle sticky search box (function(){ var rootEl = document.getElementById('lab-dos'); if (!rootEl) return; function setInView(inView){ document.body.classList.toggle('labdos-inview', !!inView); console.log('labdos-inview:', inView); // Debug } function recompute() { var rect = rootEl.getBoundingClientRect(); var vpH = window.innerHeight || document.documentElement.clientHeight; // Учитывать в поле зрения, если видна значительная часть #lab-dos var inView = rect.bottom > vpH * 0.2 && rect.top < vpH * 0.8; setInView(inView); } if ('IntersectionObserver' in window) { try { var io = new IntersectionObserver(function(entries){ entries.forEach(function(entry){ setInView(entry.isIntersecting); }); }, { threshold: [0, 0.01], rootMargin: '0px 0px -30% 0px' }); io.observe(rootEl); } catch(e) { /* резервный вариант для проверки прокрутки */ } } $(window).on('scroll.labdos resize.labdos orientationchange.labdos', recompute); setTimeout(recompute, 100); })(); // Принудительное закрепление поля поиска на мобильных устройствах с помощью агрессивного подхода (function(){ console.log('Инициализация закрепленного поля поиска'); // Отладка var $searchBox = $('#lab-dos .search-box'); var $searchWrapper = $('#lab-dos .search-wrapper'); console.log('Найдено элементов:', $searchBox.length, $searchWrapper.length); // Отладка if (!$searchBox.length || !$searchWrapper.length) return; var stickyClone = null; var isStuck = false; function handleSticky() { var isMobile = window.innerWidth <= 991; if (!isMobile) { if (isStuck) unstickSearchBox(); return; } if (!document.body.classList.contains('labdos-inview')) { if (isStuck) unstickSearchBox(); return; } var searchRect = $searchBox[0].getBoundingClientRect(); var shouldStick = searchRect.top <= 60; console.log('Проверка на липкость:', { shouldStick, searchTop: searchRect.top, isStuck }); // Отладка if (shouldStick && !isStuck) { stickSearchBox(); } else if (!shouldStick && isStuck) { unstickSearchBox(); } } function stickSearchBox() { if (isStuck) return; isStuck = true; console.log('АКТИВАЦИЯ липкого поля поиска'); // Отладка // Создание простого липкого поля поиска в стиле якоря stickyClone = $('
'); stickyClone.html(`
Нажмите, чтобы найти результаты лабораторных анализов...
`); stickyClone.css({ position: 'fixed', top: '60px', left: '15px', right: '15px', height: '50px', zIndex: '99999', backgroundColor: 'rgba(255, 255, 255, 0.95)', backdropFilter: 'blur(15px)', webkitBackdropFilter: 'blur(15px)', border: '1px solid rgba(255, 76, 136, 0.2)', boxShadow: '0 8px 32px rgba(255, 76, 136, 0.15)', borderRadius: '16px', cursor: 'pointer', display: 'flex', alignItems: 'center', justifyContent: 'center', color: '#6a297a', fontSize: '16px', fontWeight: '500' }); // При нажатии прокрутить до исходного поля поиска и установить фокус stickyClone.on('click', function(){ $('html, body').animate({ scrollTop: Math.max(0, $searchBox.offset().top - 100) }, 400, function(){ $searchBox.find('#searchBox').focus(); }); }); $('body').append(stickyClone); // Добавить разделитель $searchWrapper.css('paddingTop', '70px'); } function unstickSearchBox() { if (!isStuck) return; isStuck = false; console.log('ДЕАКТИВАЦИЯ липкого поля поиска'); // Отладка, если (stickyClone) { stickyClone.remove(); stickyClone = null; } $searchWrapper.css('paddingTop', ''); } $(window).on('scroll.sticky resize.sticky orientationchange.sticky', handleSticky); setTimeout(handleSticky, 500); })(); // Инициализация видимости кнопки очистки (×) при загрузке страницы var $sb = $('#searchBox'); $sb.closest('.search-box').toggleClass('has-value', ($sb.val() || '').trim().length > 0); // Через 10 секунд переместите Gravity Form (id=3) в плейсхолдер и отобразите его. setTimeout(function() { var $placeholder = $('#gravityform-placeholder'); if (!$placeholder.length) return; var $gf = $('#gform_wrapper_3'); if (!$gf.length) { $gf = $('#gform_3').closest('.gform_wrapper'); } if (!$gf.length) { $gf = $('.gform_wrapper').filter(function(){ return $(this).find('#gform_3').length > 0; }).first(); } if ($gf.length) { $gf.hide(); $placeholder.append($gf); $gf.fadeIn(300); } }, 10000); // Ленивая загрузка API Google Maps только при взаимодействии пользователя с формой/разделом (function(){ var mapsSrc = null; var mapsInjected = false; function captureAndRemoveMapsScript() { if (window.google && window.google.maps) { mapsInjected = true; // Уже загружено return; } var $scripts = $('script[src*="maps.googleapis.com/maps/api/js"]'); if ($scripts.length) { mapsSrc = $scripts.eq(0).attr('src'); // Удаляем все соответствующие скрипты, чтобы предотвратить немедленную загрузку $scripts.remove(); } } function injectMapsScriptOnce() { if (mapsInjected) return; mapsInjected = true; if (!mapsSrc) return; var s = document.createElement('script'); s.src = mapsSrc; s.async = true; s.defer = true; document.head.appendChild(s); } // Пытаемся как можно быстрее перехватить теги скрипта captureAndRemoveMapsScript(); // Загрузка при взаимодействии с разделом оформления заказа или любым полем ввода внутри формы var interactionEvents = 'click focus touchstart change'; $(document).on(interactionEvents, '#checkout-section, #gform_wrapper_3, #gform_3, #gravityform-placeholder', function(){ injectMapsScriptOnce(); }); // Загрузка, когда раздел находится рядом с областью просмотра if ('IntersectionObserver' in window) { var observer = new IntersectionObserver(function(entries){ entries.forEach(function(entry){ if (entry.isIntersecting) { injectMapsScriptOnce(); observer.disconnect(); } }); }, { rootMargin: '200px' }); var el = document.getElementById('checkout-section'); if (el) observer.observe(el); } })(); }); })(jQuery);