Javascript 引导下拉列表:重新呈现时添加类
引导的Javascript 引导下拉列表:重新呈现时添加类,javascript,jquery,html,css,twitter-bootstrap,Javascript,Jquery,Html,Css,Twitter Bootstrap,引导的.dropdown.show.dropdown菜单在滚动时更改其位置top/bottom和bottom/top 无论何时,我如何将顶部呈现的类/底部呈现的类添加到下拉列表中 我注意到,每当重新渲染时,它会将x-placement属性添加到.dropdown menu元素中 比如: $('.dropdown').on('render', function(ev) { $(this).addClass(ev.direction); }); 其中ev.direction将是相对于其
.dropdown.show.dropdown菜单
在滚动时更改其位置top/bottom
和bottom/top
无论何时,我如何将顶部呈现的类/底部呈现的类添加到下拉列表中
我注意到,每当重新渲染时,它会将x-placement
属性添加到.dropdown menu
元素中
比如:
$('.dropdown').on('render', function(ev) {
$(this).addClass(ev.direction);
});
其中ev.direction
将是相对于其下拉开关出现的位置
您可以使用下拉菜单的x-placement
属性添加或删除滚动上的类。我制作了一个函数addYourClass(),您可以在滚动或单击事件时启动该函数
在下面的代码段中滚动时,您可以看到更改背景色的效果
堆栈片段
$(文档).on('滚动单击',函数()){
addYourClass($(“.dropdown”);
});
$(document).on('click','dropdown.btn',function()){
addYourClass($(“.dropdown”);
});
函数addYourClass($item){
if($('.dropdown menu.show').length){
if($item.find(“.dropdown menu”).attr(“x-placement”)=“底部开始”){
$item.addClass(“呈现在底部”).removeClass(“呈现在顶部”);
}else if($item.find(“.dropdown menu”).attr(“x-placement”)==“top start”){
$item.addClass(“呈现在顶部”).removeClass(“呈现在底部”);
}
}否则{
$item.removeClass(“顶部渲染,底部渲染”);
}
}
。下拉列表{
保证金:200px 150px 0;
}
身体{
高度:600px;
}
.dropdown.rendered-on-top.btn{
背景:红色!重要;
}
.dropdown.rendered-on-bottom.btn{
背景:蓝色!重要;
}
下拉按钮
你能提供一把小提琴吗?一把什么小提琴,引导下拉菜单?忽略不计。我刚从bootstrap网站上了解到。我还是添加了它。你到底需要这个额外的类做什么?//根据BS设置此x-placement
属性的时间,也许您可以在show.BS.dropdown
或show.BS.dropdown
事件中读取其内容?我以前想过它,但我宁愿依赖.on()
和.trigger()
而不是滚动
事件,与下拉列表
本身无关。但是谢谢你的努力。
$(".dropdown").on("shown.bs.dropdown",function(){
var ele = $(this).find(".dropdown-menu");
$(document).on("scroll",ddonchange(ele));
});
function ddonchange(ele){
if($(ele).attr("x-placement")=='bottom-start')
$(ele).parent().addClass("myclass");
}