我有一个来自数据库的动态填充表,其行数非常多。 我已经设置了JSFiddle here
在驱动程序行中,我有一个弹出窗口,会显示当前可用的驱动程序,点击它们我可以为相应的预订分配驱动程序。
我想直接在已单击的行下弹出driver-div,因为现在驱动程序div在固定位置弹出,我需要一种方法来动态更新div的位置以匹配点击的行。
我尝试过使用.position();
和.index();
,但我无法让它发挥作用。
答案 0 :(得分:0)
使用.offset()
$('#select-driver-list').offset( elem.offset() );
这会将驱动程序框的顶部设置为链接顶部(elem)。您可以使用它来将elem的高度添加到框的顶部以使其显示
if (elem.length) {
e.preventDefault();
var o = elem.offset();
o.top += elem.height();
$('#select-driver-list').toggle(100).offset( o );
}
答案 1 :(得分:0)
仅更新逻辑,
$(document).ready(function () {
$(".select-driver").each(function(e){
$(this).on("click",function(){
$(this).parent("div").siblings("div").toggle();
});
});
});
正常工作:jsfiddle