0

我有一些 JQuery 可以为响应式设计创建移动菜单。我通过代码嗅探器运行代码,它告诉我“ Inline control structures are not allowed”。

有问题的代码区域是:

 else {
    $('#main-menu li').each(function () {
      if ($(this).children('ul').length)
        $(this).append('<span class="drop-down-toggle"><span class="drop-down-arrow"></span></span>');
    });

...而上面的具体行是:

if ($(this).children('ul').length)

我尝试在 Google 上搜索“ Jquery 内联控制结构”,但没有找到太多。

这里是整个函数的一个pastebin,供参考。我猜代码可以改写,但我没有关于更改它的参考。该代码实际上有效,所以我不确定它本身是否一定是语法错误。

4

2 回答 2

2

它可能希望您使用大括号:

else {
    $('#main-menu li').each(function () {
      if ($(this).children('ul').length) {
        $(this).append('<span class="drop-down-toggle"><span class="drop-down-arrow"></span></span>');
      }
    });

if将大括号与和一起使用总是更安全else。它永远不会导致问题,并且偶尔可以防止意外错误(通常在以后编辑代码时)。

于 2012-08-30T00:09:57.697 回答
0

如果我知道,这是一个简单的语法警告。尝试使用{ }.

于 2012-08-30T00:10:31.067 回答