尝试在选择框容器中使用滚动条隐藏容器

时间:2013-01-28 18:23:30

标签: jquery css internet-explorer google-chrome drop-down-menu

Here's my example.

我正在使用selectbox插件的略微修改版本。我做的一个修改是添加一个限制选项容器高度的类,并添加一个滚动条,否则它将超过最近的相对定位父级的高度的50%。但是现在当我尝试单击并拖动容器中的滚动条时(特别是在IE和Chrome中),容器就会消失,就好像我已经点击它一样。

有没有办法检测焦点何时在滚动条上?或者你可以推荐对插件进行任何其他修改,以防止选项消失,直到选择了一个或者容器外部确实存在点击事件?

2 个答案:

答案 0 :(得分:1)

当您在创建的ul外部单击时,将其设置为隐藏选择框。当您点击.selectbox-wrapper时,将其更改为隐藏。

答案 1 :(得分:1)

我最终通过将这些行添加到selectbox插件来解决问题:

$container
.mousedown(function (e) {
    hasfocus = 1;
})
.mousemove(function (e) {
    hasfocus = 0;
})
.scroll(function (e) {
    $input.focus();
});