jquery ui 下拉检查是否可见

标签 jquery html css jquery-ui combobox

我正在使用自动完成位置选项来翻转下拉菜单,只要下拉菜单足够长以到达窗口边缘,它就可以工作...

position: {
        my: "left top",
        at: "left bottom",
        collision: "flip flip"
    },

...但如果列表不够长,它不会翻转并隐藏在另一个元素后面,如下图所示...

enter image description here

我想做的是确定下拉菜单何时隐藏或滚动条是否出现哪个更容易,以及是否翻转下拉菜单。

最佳答案

检测水平滚动条是否可见(取自 here 稍作修改):

(function($) {
    $.fn.hasHorizontalScrollBar = function() {
        return this.get(0).scrollWidth > this.outerWidth();
    }
})(jQuery);

$('body').hasHorizontalScrollBar();

要检查元素是否完全可见,您可以使用 here 中的 isScrolledIntoView 函数

关于jquery ui 下拉检查是否可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32728110/

相关文章:

javascript - jQuery:如何从逗号分隔的字符串创建索引数组

java - 如何获取 DOM 对象中两个元素之间的文本?

css - Headless Chrome 没有检测到网页的 css 和背景图片

javascript - 如何在响应模式下反转元素的顺序

css - 缩放 HTML 内容并添加滚动条

javascript - 用另一个文本替换所选内容

javascript - 从 map 值中删除最后一个字母

jquery - 使用 jquery mobile 访问手机功能,例如相机和电话

javascript - 连接 HTML 和 Javascript

javascript - 仅使用 javascript 和 'this' 更改 img 源 onmouseover