Lavalamp菜单-未采集类型错误

Lavalamp Menu - Uncaught TypeError

本文关键字:类型 错误 菜单 Lavalamp      更新时间:2023-09-26

我在搜索Lavalamp菜单解决方案时发现了这个小脚本。我不确定这是不是最好的一个,但看起来不错,可以很容易地修改。

然而,它在控制台中包含一个错误,我不喜欢错误,所以任何帮助都将不胜感激。

Uncaught TypeError: Cannot read property 'left' of null

Lavalamp菜单原始源

Lavalamp菜单修复JS Fiddle

您可以转到JS Fiddle修复程序,在控制台中查看菜单时会显示该属性错误。

我不知道如何解决这个问题,有什么建议吗?

在"mouseleave"分支中这样修复:

        if ($this.siblings('li.active').offset()) {
            left = $this.siblings('li.active').offset().left - ($this.closest('.' + lavalamp).offset().left);
            width = $this.siblings('li.active').width();
            $this.closest('ul').next('div.floatr').css({
                "width": width + "px",
                "left": left + "px"
            });
         }

这是由于fiddle的javascript部分的第35行。

$this.siblings('li.active')

不返回任何内容,这就是为什么Chrome调试器返回错误Cannot read property 'left' of null