我已经在wordpress中的悬停/当前菜单项上创建了一个带有背景移动div的菜单。
JsFiddle:https://jsfiddle.net/wwv9c0v7/
问题:除非我重新加载页面(F5),否则一切正常。点击带有新页面的链接也很有效。我不知道为什么,但是position()。left会返回一个错误的值。它向左移动了太远。
$magicLine.css("left", $(".current-menu-item").position().left)
感谢您的帮助。
编辑:Live preview
~Neme
答案 0 :(得分:1)
我已经设法查看了您的问题,但正如下面的文档所述,浏览器不会公开他们的API以检测缩放情况,当您刷新页面的大小不同时,您可以观察到加载页面时的行为,它以不同的大小开始(我假设页面的大小更大,因为滚动条在页面后加载,因此这会使页面改变它的大小)。
文档:https://api.jquery.com/position/
尝试在jquery方法中执行此操作:$(document).ready(...)
通过这样做,确保在页面加载后该函数将始终执行。