滚动条单击使div消失IE9 + / Windows 8

时间:2013-09-11 11:51:25

标签: javascript internet-explorer drop-down-menu windows-8

因为我的网站上有几个带皮肤的选择框,我使用的是dropkick.js,它基本上用交互式div替换了选择框。如果列表大于max-height,则overflow-auto会显示滚动条。它适用于Firefox,Chrome和Safari。

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

> Link to the page

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

> Link to similar bug

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

在IE9 +中有没有人偶然发现了这个问题?

1 个答案:

答案 0 :(得分:2)

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

我通过更改“点击”事件来关闭下拉菜单“mousedown”来解决这个问题。

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

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