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

Posted

技术标签:

【中文标题】尝试在选择框容器中使用滚动条隐藏容器【英文标题】:Trying to use Scrollbar in selectbox container Hides container 【发布时间】:2013-01-12 04:16:01 【问题描述】:

Here's my example.

我正在使用稍微修改过的选择框插件版本。我所做的修改之一是添加一个限制选项容器高度的类,并添加一个滚动条,否则它会超过最近相对定位的父项高度的 50%。但是现在,当我尝试单击并拖动容器中的滚动条时(尤其是在 IE 和 Chrome 中),容器就会消失,就好像我在其外部单击过一样。

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

【问题讨论】:

selectbox 插件甚至无法在 Firefox 中加载。此外,还有语法错误。到目前为止,你做了什么来尝试解决这个问题? 自从我发布这个问题以来,我一直在努力解决这个问题。您可能已经看到它处于不断变化的状态。 【参考方案1】:

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

【讨论】:

【参考方案2】:

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

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

【讨论】:

以上是关于尝试在选择框容器中使用滚动条隐藏容器的主要内容,如果未能解决你的问题,请参考以下文章

选择框的自定义滚动条

GUI

如何在 IE 的选择框中获取水平滚动条?

设置多选选择框的高度

6 下拉选择框警告框滚动条操作

一些控件