我试图获得select2下拉实际渲染高度,但是:
如果我使用这样的东西:
$('#my-input-s2').on('select2-open', function() {
var height = $(".my-dropdown").first().height()
console.log(height)
})
结果总是29
当我使用它时(因为select2因为读取远程数据而没有完全打开:
$('#my-input-s2').on('select2-open', function() {
var height = setTimeout($(".my-dropdown").first().height(),0)
console.log(height)
})
我的结果是在每次打开select2时逐渐增加值(例如102,然后是109,然后是114)
但是当select2完全打开时,我需要确定下拉的高度 *编辑(完全打开=打开时) 谢谢你的回答
答案 0 :(得分:1)
不是设定值吗? select2 CSS说:
.select2-results {
margin: 4px 4px 4px 0;
max-height: 200px;
overflow-x: hidden;
overflow-y: auto;
padding: 0 0 0 4px;
position: relative;
}
因此,完全打开的下拉框的高度为200px(+8边距)。
答案 1 :(得分:1)
我的解决方案:
将其挂起到另一个活动:
<强> SELECT2高亮 强> 在下拉列表中突出显示选项时触发。
$('#my-input-s2').on('select2-highlight', function() {
var height = $(".my-dropdown").height()
})