JQuery / Chrome中的明显竞争条件

时间:2016-08-29 20:00:38

标签: jquery

所以我试图将一些li / a元素的大小相加以获得所有元素的大小(这与ul不同),如下所示:

$("ul.menu").children("li").children("a").each(function () {
    menuWidth += $(this).innerWidth();  
}); 

在那之后,我想在每个元素之间添加边框宽度,而不是重复计算(可能更好的方法)。

menuWidth += numberOfBorders * borderThickness;

当我检查menuWidth的输出是什么时,有时候它是正确的大小912(898 + 16,边框)。其他时候是970(954 + 16)。我无法理解造成这种情况的原因,除了由于each()功能或Chrome的某些原因导致某些竞争条件奇怪。从我的强制搜索中我看到很多结果说js / jquery不是多线程的东西,但这对我来说似乎很可疑。有任何想法吗?我非常感谢任何帮助。

编辑:
更多背景资料

我正在尝试通过JQuery做一些半kssdgey css样式,而不是使用css获得完美大小,定位等所有内容。在这种情况下,我试图获取菜单的大小,并在找到窗口的大小后,通过向内部菜单链接添加左/右填充来扩展/缩小菜单大小。我确信在CSS中可能有一种传统的方法可以做到这一点,但是在这一点上我真的很好奇为什么这个看似简单的东西似乎不能始终如一地工作。我已经尝试删除网站中的所有图片,谷歌字体或其他任何可能异步但没有运气的图像。在这一点上,我有点怀疑它可能与Wordpress有关。

0 个答案:

没有答案