Lavalamp菜单 - 未捕获的TypeError

时间:2013-07-07 11:23:31

标签: javascript jquery lavalamp

我正在寻找Lavalamp菜单解决方案,我找到了这个小脚本。我不确定这是否是最好的,但看起来不错,可以轻松修改。

但是它在控制台中包含一个错误,我不喜欢错误,所以任何帮助都会受到赞赏。

Uncaught TypeError: Cannot read property 'left' of null

Lavalamp Menu Original Source

Lavalamp Menu Fix JS Fiddle

您可以访问JS Fiddle修复程序并在菜单中看到它会显示属性错误。

我不知道如何解决这个问题,所以提示?

2 个答案:

答案 0 :(得分:1)

这是由于小提琴的javascript部分的第35行。

$this.siblings('li.active')

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

的原因

答案 1 :(得分:1)

在“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"

            });
         }