#javascript #jquery #html #asp.net-mvc #google-chrome
#javascript #jquery #HTML #asp.net-mvc #google-chrome
Вопрос:
Когда я прокручиваю Chrome, я получаю ошибку на своем веб-сайте.
jquery-3.3.1.min.js:2 [Вмешательство] Невозможно предотвратить дефолт внутри пассивного прослушивателя событий из-за того, что цель обрабатывается как пассивная. Смотрите https://www.chromestatus.com/features/6662647093133312
Чтобы предотвратить это:
$(document).ready(function () {
$(window).on("mousewheel", function(e){
if(e.originalEvent.deltaY > 0) {
e.preventDefault();
return;
} else if (e.originalEvent.wheelDeltaY < 0) {
e.preventDefault();
return;
}
});
});
использовал это в макете / главной странице.
Но это не имеет никакого эффекта, и ошибка не выводится.
Ответ №1:
Вы должны установить для параметра «passive» в настройках значение «false»
passive: логическое значение, которое, если true, указывает, что функция, указанная listener, никогда не вызовет preventDefault(). Если пассивный слушатель вызывает функцию preventDefault(), пользовательский агент не сделает ничего, кроме как сгенерирует предупреждение консоли. Подробнее см. в разделе Улучшение производительности прокрутки с помощью пассивных слушателей.
window.addEventListener('mousewheel', function(e) {
e.preventDefault();
}, { passive: false });
Комментарии:
1. Вставьте в консоль Chrome, и вы увидите, что все работает нормально, без ошибок
2. привет, это так. Даже в консоли и тоже не удаляет ошибку.
3. там написано undefined
4. неопределенный не является ошибкой. после вставки кода в консоль проверьте веб-страницу с помощью колеса мыши.
5. вы вставили его в консоль Chrome (F12)?