Как сделать так, чтобы при наведении курсора на блок, страница не прокручивалась?

Как можно улучшить и уточнить вопрос:

Как сделать так, чтобы параметр `navigation` был равен `false`, когда курсор находится на блоке swiper? У меня есть следующий код, который, по-моему, должен делать это, но он не работает. 

```javascript
if (document.querySelector('#fullpage')) {
    if (window.innerWidth >= 993) {
        let isNavigationEnabled = true;

        const fullPageInstance = new fullpage('#fullpage', {
            navigation: isNavigationEnabled,
            navigationPosition: 'left',
            scrollHorizontally: true,
            onLeave: function(origin, destination, direction, trigger) {
                var origin = this;
                const el = document.querySelector('.header__column-location');
                el.classList.remove("view");
                if (origin.index == 0 && direction =='down') {
                    document.querySelector('#fp-nav.fp-left').classList.add('scroll');
                } else if (origin.index == 2 && direction == 'down') {
                    document.querySelector('#fp-nav.fp-left').classList.remove('scroll');
                } else if (origin.index == 3 && direction == 'down') {
                    document.querySelector('#fp-nav.fp-left').classList.add('scroll');
                } else if (origin.index == 6 && direction == 'down') {
                    document.querySelector('#fp-nav.fp-left').classList.remove('scroll');
                } else if (origin.index == 7 && direction == 'up') {
                    document.querySelector('#fp-nav.fp-left').classList.add('scroll');
                } else if (origin.index == 4 && direction == 'up') {
                    document.querySelector('#fp-nav.f
```

Как исправить код так, чтобы значение `navigation` становилось `false`, когда мышь находится внутри блока swiper?
  • 31 марта 2024 г. 8:59
Ответы на вопрос 1
Для того чтобы отключить прокрутку страницы при наведении курсора на блок, можно добавить следующий код на страницу:

```javascript
document.querySelector('#block').addEventListener('mouseenter', function() {
  document.body.style.overflow = 'hidden';
});

document.querySelector('#block').addEventListener('mouseleave', function() {
  document.body.style.overflow = 'auto';
});
```

Где `#block` - это id вашего блока, на котором вы хотите отключить прокрутку. 

Чтобы улучшить и уточнить вопрос, можно добавить следующий код в ваш исходный пример:

```javascript
document.querySelector('.swiper-container').addEventListener('mouseenter', function() {
    fullPageInstance.setAllowScrolling(false);
});

document.querySelector('.swiper-container').addEventListener('mouseleave', function() {
    fullPageInstance.setAllowScrolling(true);
});
```

Этот код добавляет обработчики событий `mouseenter` и `mouseleave` на блок `.swiper-container`, который вызывает метод `setAllowScrolling(false)` и `setAllowScrolling(true)` соответственно для объекта `fullPageInstance`, чтобы отключить и включить прокрутку, когда курсор находится внутри блока swiper.
Похожие вопросы