0

因为我的网站上有几个皮肤选择框,所以我使用的是 dropkick.js,它基本上用交互式 div 替换了选择框。如果列表大于最大高度,溢出自动使滚动条出现。它在 Firefox、Chrome 和 Safari 上运行良好。

在 Windows 8 + IE9 和 IE10 上会出现一个滚动条,但是当我单击或尝试拖动它时,div 会隐藏!

> 链接到页面

我只在 Bootstrap UI 组合框上发现了一个稍微类似的问题,但该脚本对我不起作用,因为 dropkick.js 不使用 Bootstrap 并且调整脚本并没有解决问题。

> 链接到类似的错误

我希望它可以通过 div 上的 stopPropagation 来修复,但也没有运气。试过 -ms-overflow-style:scrollbar 但这不会改变行为。

有没有人在 IE9+ 中偶然发现了针对此问题的有效修复?

4

1 回答 1

2

上周我的一个项目也遇到了同样的问题。

我通过将关闭下拉菜单的“click”事件更改为“mousedown”来解决它。

出于某种奇怪的原因,IE9+ 在 Windows 8 上将滚动条视为 DOM 元素之外的 click 和 mouseup 事件,但对于 mousedown 事件,它接受滚动条作为 DOM 元素的一部分。

顺便说一句,我试图在您的网站上重现该错误但不能(在 IE10/Windows 8 上测试)。

于 2013-09-17T06:24:49.910 回答