Javascript jquerymultiselect不';t滚动至所选选项
我在这里使用JQuery Multiselect插件: 当选项列表很长时,会出现一个滚动条,但不会自动滚动到所选选项。这意味着,在选择第50个选项后,如果我想选择第51个选项,我必须再次向下搜索 你知道如何解决这个问题吗?我试着使用Scrolltop,但没有成功 代码非常简单Javascript jquerymultiselect不';t滚动至所选选项,javascript,jquery,scroll,multi-select,Javascript,Jquery,Scroll,Multi Select,我在这里使用JQuery Multiselect插件: 当选项列表很长时,会出现一个滚动条,但不会自动滚动到所选选项。这意味着,在选择第50个选项后,如果我想选择第51个选项,我必须再次向下搜索 你知道如何解决这个问题吗?我试着使用Scrolltop,但没有成功 代码非常简单 $(function(){ $("select").multiselect({multiple: false, selectedList: 1}); }); 下面是一个解决此问题的方法: 提前非常感谢。第一次尝试时
$(function(){
$("select").multiselect({multiple: false, selectedList: 1});
});
下面是一个解决此问题的方法:
提前非常感谢。第一次尝试时,您可以看看这个,它工作得很好
你只需要将它与你的需要相匹配,在偏移中加一些额外的像素,它会在中间选择滚动的选项,而不是最上面的
你是对的,它确实有效。我的问题是因为我在同一页中有多个multiselect,所以offset()。对于除第一个multiselect之外的任何multiselect,top始终为零(我没有注意到第一个multiselect不是零…)。解决方法如下:$('.ui-multiselect-checkboxes').scrollTop($($('.ui-multiselect-checkboxes .ui-state-active')[index]).offset().top);
其中index是页面中多个选择项的索引
非常感谢 我建议,要编辑“jQuery MultiSelect UI小部件1.12”JS文件, 打开菜单选项时,选择“自动选择” 在文件中搜索:(始终选择第一项)
this.labels.eq(0).trigger('mouseover').trigger('mouseenter').find('input').trigger('focus')代码>
并将其更改为:(动态选择):
var idxSelected=0;
如果(o.multiple==true){
//首先查找并检查。
idxSelected=$container.find('input[type=checkbox]:checked:first')。parent().parent().index();
}
否则{
//找到检查过的那个
idxSelected=$container.find('.ui状态活动:first').parent().index();
}
idxSelected=idxSelected<0?0:idxSelected;
this.labels.eq(idxSelected).trigger('mouseover').trigger('mouseenter').find('input').trigger('focus')代码>
在FF+CHROME+IE上测试(在多个+单个列表上)你是对的,它确实有效。我的问题是因为我在同一页中有多个multiselect,所以当offset()时,除了第一个multiselect外,任何multiselect的top始终为零。
$('.ui-multiselect-checkboxes').scrollTop($($('.ui-multiselect-checkboxes .ui-state-active')[index]).offset().top);