我做了a fiddle here。
我有一个onResourceReady
项目,使用的是bootstrap-select,perfect-scrollbar,bootstrap 4
的最新版本。
在包含4个jquery
元素的页面中,selectpicker
在下拉菜单中无效,尽管没有错误。我认为这与如何为页面上的每个Perfect Scrollbar
初始化bootstrap select
的每个实例有关。
我的代码是
selectipicker
在$(document).ready(function() {
// Init PerfectScrollbar + SelectPicker
if ($('.dropdown-menu.inner').length != 0) {
const spps = [];
// For each instance of SelectPicker
$('.dropdown-menu.inner').each(function(i) {
// Get closest boostrap-select dropdown and add data-sp-id="i" so we know which is selected later
$(this).attr('data-sppsid', i);
// Using the SelectPicker array, initialize each picker scrollbar
spps[i] = new PerfectScrollbar(this, {
minScrollbarLength: 40
});
});
// When a SelectPicker is opened
$('body').on('shown.bs.dropdown', function(e) {
e.stopImmediatePropagation();
// Get the picker sppsid
var i = $(e.target).find('.dropdown-menu.inner').data('sppsid');
console.log(spps[i]);
// Update the picker in the array
spps[i].update();
});
}
$('.ps-scrollbar-y').on('click', function(e) {
e.stopPropagation();
});
});
处,我看到该元素是PerfectScrollbar并包含contaoins:
console.log
在PerfectScrollbar {element: ul.dropdown-menu.inner.show.ps, settings: {…}, containerWidth: 0, containerHeight: 0, contentWidth: 0, …}
中,我可以看到将inspect
类添加到元素中,但是如图所示,ps__rail-x
删除了它们。
我错过了什么?谢谢。