SanHok Product

SK- Conveyor Belt Roller-03

For various reasons, the conveyor belt may at times, tend to drift laterally.

In these cases it is possible to utilise vertical rollers with cantilevered spindles, these are generally known as belt guide rollers.

It is necessary however to pay particular attention to the use to which these rollers are put, so that the forces…

Contact us for a price

Speak To A Conveyer Specialist

Specifications

SanHok SK- Conveyor Belt Roller-03

Features

Услуги

Customization Steps

The conveyor roller is a non-standard customized product. The customization steps are as follows:

Contact us for a price

Speak To A Conveyer Specialist

Аксессуары 样式1

Enhance Your Assembly Line With Our Premium Accessories

<script>
document.addEventListener('DOMContentLoaded', () => {

    const FBautoplayTime = 5; // Set autoplay time in secounds

    // Seleccionar todos los conjuntos de tabs
    const tabsSets = document.querySelectorAll('[fb-tabs]');
  


    tabsSets.forEach(tabsSet => {
        const tabs = tabsSet.querySelectorAll('[fb-tabs-btn]');
        const panels = tabsSet.querySelectorAll('[fb-tabs-panel]');
        const tabsMenu = tabsSet.querySelector('[fb-tabs-menu]');
        const tabsTitle = tabsSet.querySelector('[fb-tabs-title]');
        const isVertical = tabsSet.hasAttribute('fb-vertical');
            
      // Añadir la variable CSS --fb-progress-time al estilo de [fb-tabs]
        tabsSet.style.setProperty('--fb-progress-time', `${FBautoplayTime}s`);

        // Asignar aria-label del menú de tabs con el texto del título
        if (tabsMenu && tabsTitle) {
            tabsMenu.setAttribute('aria-label', tabsTitle.textContent.trim());
        }

        // Asignar aria-controls a los tabs y aria-label a los paneles
        if (tabs.length === panels.length) {
            tabs.forEach((tab, index) => {
                const panelId = panels[index].id;
                const tabText = tab.textContent.trim();
                if (panelId && tabText) {
                    tab.setAttribute('aria-controls', panelId);
                    panels[index].setAttribute('aria-label', tabText);
                }
                tab.setAttribute('aria-selected', tab.classList.contains('brx-open'));
                tab.setAttribute('tabindex', tab.classList.contains('brx-open') ? '0' : '-1');
            });
        }

        // Configurar el MutationObserver
        const observer = new MutationObserver((mutations) => {
            mutations.forEach((mutation) => {
                if (mutation.type === 'attributes' && mutation.attributeName === 'class') {
                    const targetTab = mutation.target;
                    targetTab.setAttribute('aria-selected', targetTab.classList.contains('brx-open'));
                    targetTab.setAttribute('tabindex', targetTab.classList.contains('brx-open') ? '0' : '-1');
                }
            });
        });

        // Observar cada tab para cambios en la clase
        tabs.forEach((tab) => {
            observer.observe(tab, { attributes: true });
        });

        let currentTabIndex = 0;
        let autoplayInterval = null;
        let hoverTimeout = null;
        let isHovered = false;
        let manualSelection = false;

        const startAutoplay = () => {
            autoplayInterval = setInterval(() => {
                if (!manualSelection && !isHovered) {
                    const nextIndex = (currentTabIndex + 1) % tabs.length;
                    activateTab(nextIndex);
                }
            }, FBautoplayTime*1000); // Usar la constante para el tiempo del autoplay
        };

        const resetAutoplay = (index) => {
            clearInterval(autoplayInterval);
            activateTab(index);
            manualSelection = true;

            tabs.forEach((tab, idx) => {
                tab.setAttribute('aria-selected', idx === currentTabIndex);
                tab.setAttribute('tabindex', idx === currentTabIndex ? '0' : '-1');
                panels[idx].classList.toggle('brx-open', idx === currentTabIndex);
            });

            setTimeout(() => {
                manualSelection = false;
            }, 100);
        };

        const activateTab = (index) => {
            tabs[currentTabIndex].classList.remove('brx-open');
            panels[currentTabIndex].classList.remove('brx-open');

            currentTabIndex = index;

            tabs[currentTabIndex].classList.add('brx-open');
            panels[currentTabIndex].classList.add('brx-open');

            tabs.forEach((tab, idx) => {
                tab.setAttribute('aria-selected', idx === currentTabIndex);
                tab.setAttribute('tabindex', idx === currentTabIndex ? '0' : '-1');
            });
        };

        startAutoplay();

        const handleHoverStart = () => {
            isHovered = true;
            tabsSet.classList.add('fb-tab-progress');
            clearInterval(autoplayInterval);
        };

        const handleHoverEnd = () => {
            isHovered = false;
            tabsSet.classList.remove('fb-tab-progress');
            if (!manualSelection) {
                startAutoplay();
            }
        };

        // Añadir manejadores de clic y hover para tabs
        tabs.forEach((tab, index) => {
            tab.addEventListener('click', () => {
                resetAutoplay(index);
            });

            tab.addEventListener('focus', () => {
                handleHoverStart();
            });

            tab.addEventListener('mouseenter', () => {
                handleHoverStart();
            });

            tab.addEventListener('mouseleave', () => {
                handleHoverEnd();
            });

            tab.addEventListener('keydown', (event) => {
                if (event.key === 'Enter' || event.key === ' ') {
                    event.preventDefault();
                    resetAutoplay(index);
                }
            });
        });

        // Añadir manejadores de hover para paneles
        panels.forEach((panel) => {
            panel.addEventListener('mouseenter', () => {
                handleHoverStart();
            });

            panel.addEventListener('mouseleave', () => {
                handleHoverEnd();
            });
        });

        // Manejo de eventos de teclado para navegación entre tabs
        tabsSet.addEventListener('keydown', (event) => {
            const currentTab = tabs[currentTabIndex];

            if (event.key === 'ArrowRight' || (isVertical && event.key === 'ArrowDown')) {
                event.preventDefault();
                const nextIndex = (currentTabIndex + 1) % tabs.length;
                resetAutoplay(nextIndex);
                tabs[nextIndex].focus();
            } else if (event.key === 'ArrowLeft' || (isVertical && event.key === 'ArrowUp')) {
                event.preventDefault();
                const nextIndex = currentTabIndex === 0 ? tabs.length - 1 : currentTabIndex - 1;
                resetAutoplay(nextIndex);
                tabs[nextIndex].focus();
            } else if (event.key === 'Home') {
                event.preventDefault();
                resetAutoplay(0);
                tabs[0].focus();
            } else if (event.key === 'End') {
                event.preventDefault();
                resetAutoplay(tabs.length - 1);
                tabs[tabs.length - 1].focus();
            }
        });
    });
  

});
</script>

Линия сборки кондиционеров

Here goes your text ... Select any part of your text to access the formatting toolbar.

Product A

Product B

Product C

Product D

Product E

Product F

Линия сборки телевизоров
Refrigerator & Freezer Assembly Line
Производство стиральных машин
Линия сборки мобильных телефонов
Производство стиральных машин
Линия сборки светодиодных ламп
Линия сборки микроволновых печей
Water Dispenser Assembly Line
Проверить больше

Battery Pack Production Line

Here goes your text ... Select any part of your text to access the formatting toolbar.

Product A

Product B

Product C

Product D

Product E

Product F

Product A

Product B

Product C

Product D

Product E

Product F

Product A

Product B

Product C

Product D

Product E

Product F

Аксессуары

Enhance Your Assembly Line With Our Premium Accessories

Product A

Product B

Product C

Product D

Product E

Product F

Product F

Product F

Product A

Product B

Product C

Product D

Product E

Product F

Product A

Product B

Product C

Product D

Product E

Product F

Product A

Product B

Product C

Product D

Product E

Product F

Product A

Product B

Product C

Product D

Product E

Product F

Product A

Product B

Product C

Product D

Product E

Product F

Product A

Product B

Product C

Product D

Product E

Product F

Поддерживать

Comprehensive Services And Support

Besides life long technical support, we also offer you service as below:

Shipment Of Machine

We will take the most solid and security package, with wooden cases and all kinds of soft material, to make sure the machine arrive safely.

Installation

We will send one engineer to come to your site for helping set up the machine and testing.

Training

Our engineer will teach your staff how to use the machine and do the maintenance.

Warranty

We offer 12 months or 2500 working hours quality warranty.
FAQ Guide

SanHok TV Assembly Aging Testing Line

Отправьте нам запрос сейчас!

Пожалуйста, заполните форму ниже, указав основную информацию, чтобы помочь нам быстро понять вашу текущую ситуацию.
*Ваши данные будут храниться у нас строго конфиденциально.