我正在使用PathFinding.js package。我的代码是:
$(".menu-item > a").click(function(e) {
$(".menu-navigation ul ul").slideUp(),
$(this).next().is(":visible") ||
$(this).next().slideDown(),
e.stopPropagation()
});
$(".sub-menu-item > a").click(function(e) {
$(".sub-menu-navigation ul").slideUp(),
$(this).next().is(":visible") ||
$(this).next().slideDown(),
e.stopPropagation()
});
这是上方视图的可视化
(但是x和y相反,我在图像中的错误)
我正在检查所有3个绿色点的路径长度,以检查哪一条最短。不幸的是,只有第一条路径具有正确的长度。为什么?我使用的包装不正确吗?我从该问题第一行的链接中获取了文档。
我不认为这是一个软件包问题,因为它被广泛使用并且在GH上有超过6k颗星。
答案 0 :(得分:0)
我在文档中没有注意到这句话:
请注意,网格将在每次寻路时进行修改,之后将无法使用。如果要多次使用单个网格,请在调用findPath之前为其创建一个副本。
所以我必须创建网格克隆。稍后,我将在循环中使用finder
,因此在其中每次循环时我都需要重新分配网格克隆:
gridBackup = grid.clone();