在Safari中应用-webkit-transform后无法在div内滚动

Bru*_*ier 6 safari scroll overflow webkit-transform

我正在构建幻灯片菜单.

菜单很长,我需要能够在里面滚动,所以我设置了overflow-y:滚动它.

我使用-webkit-transform(以及其他浏览器上的变体)作为过渡属性.

现在我无法在div内滚动,在div顶部使用滚轮将使整个页面滚动.

如果我更改菜单的行为并转换正确的属性(将菜单设置为右:-320px并将其设置为右回动:0),滚动工作.

这个错误只发生在Safari中,它在Chrome和其他浏览器中运行良好.也适用于iOS.

有人知道解决方法吗?以前有人遇到过这个问题?我似乎无法找到任何信息.谢谢.

ana*_*ico 14

我有同样的问题,我使用的是一个animation而不是一个transitionoverflow: auto不是overflow: scroll.

这解决了我的问题(el是应用动画的DOM元素):

function fixSafariScrolling(event) {
    event.target.style.overflowY = 'hidden';
    setTimeout(function () { event.target.style.overflowY = 'auto'; });
}

el.addEventListener('webkitAnimationEnd', fixSafariScrolling);
Run Code Online (Sandbox Code Playgroud)