gpt4 book ai didi

javascript - 下拉位置问题

转载 作者:行者123 更新时间:2023-11-28 01:42:42 25 4
gpt4 key购买 nike

因此,我使用这段代码在 div 顶部而非内部显示下拉菜单。问题是,当我滚动页面时,下拉 block 固定在打开的位置。

有没有办法让block保持在div之上,但是在滚动页面的时候让它移动?

感谢您的帮助!

JSFiddle example

(function() {
var dropdownMenu;
$(window).on('show.bs.dropdown', function(e) {
var topValue = e.relatedTarget.getBoundingClientRect().y
var leftValue = e.relatedTarget.getBoundingClientRect().x
dropdownMenu = $(e.target).find('.dropdown-menu');
//$('#dv').append(dropdownMenu.detach());
dropdownMenu.css('display', 'block');
dropdownMenu.css('position', 'fixed');
dropdownMenu.css('top', topValue + 30);
dropdownMenu.css('left', leftValue - 120);
dropdownMenu.css('right', 'auto');
});
$(window).on('hide.bs.dropdown', function(e) {
// $(e.target).append(dropdownMenu.detach());
dropdownMenu.hide();
});
})();

最佳答案

只需将您的位置更改为绝对位置并删除左上角和右上角属性。具有 position: absolute; 的元素;相对于最近定位的祖先定位(而不是相对于视口(viewport)定位,如固定)

add    dropdownMenu.css('position', 'absolute');

remove dropdownMenu.css('position', 'fixed');
remove dropdownMenu.css('top', topValue + 30);
remove dropdownMenu.css('left', leftValue - 120);
remove dropdownMenu.css('right', 'auto');

关于javascript - 下拉位置问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50353065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com