gpt4 book ai didi

jquery - getBoundingClientRect() 替代方案

转载 作者:行者123 更新时间:2023-12-01 04:38:16 24 4
gpt4 key购买 nike

我正在使用 document.body.getBoundingClientRect().right 来查找顶部导航中的所有元素都在 View 之外,以便隐藏它们并将它们放在“更多”下拉列表下。但这个功能在 safari 中似乎不起作用。该功能是否有其他替代方案,或者有什么方法可以在 safari 中修复它?

var windowRightOffset = document.body.getBoundingClientRect().right,
elementHiddenFlag = false;

$(".headerNav").find("li").each(function() {
if ($(this).className !== 'more') {
var elemRightOffset = $(this).find("a")[0].getBoundingClientRect().right;
if (elemRightOffset > windowRightOffset) {
$(this).hide();
elementHiddenFlag = true;
$(".more .moreNavItems-content").append($(this).html());
}
}
});

最佳答案

由于您使用的是 jQuery,因此您可以查看 positionoffset jQuery 中的函数。

要使用 jQuery 替换代码,您需要执行以下操作:

var aTag = $(this).find("a")[0];
var left = aTag.offset().left;
var width = aTag.find("a")[0].width();

var aTagRightOffset = width + left;

关于jquery - getBoundingClientRect() 替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45463348/

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