У меня есть сайт с <div>
, который можно прокручивать по вертикали. Это хорошо работает. Я также скрываю полосу прокрутки, и это также хорошо работает. CSS по существу
.scrollable {
overflow-y: scroll;
-ms-overflow-style: none;
}
В настоящее время у меня проблема, с ним в Internet Explorer 11 и Windows 7 на дисплее с сенсорным экраном. Когда пользователь попадает в верхнюю часть нижней части прокрутки, окно отскакивает (т.е. Происходит перекос). Хотя это будет просто досадой для большинства пользователей, это работает в полноэкранном режиме в киоске, поэтому overscoll позволяет настольному компьютеру заглядывать (а не только в фоновый рисунок браузера).
Мне не удалось разобраться с решением. touch-action
(префикс и не), например
html, body, .scrollable {
-ms-touch-action: none;
touch-action: none;
}
похоже, ничего не делает, и
document.addEventListener('touchmove', function (e) { e.preventDefault(); }, false);
document.addEventListener('MSPointerMove', function (e) { e.preventDefault(); }, false);
Этот jsBin показывает проблему.
Итак, каков правильный способ предотвращения переполнения в IE11/Windows 7.