JQuery代码语法问题? (“不允许使用内联控制结构”)

时间:2012-08-30 00:01:33

标签: javascript jquery syntax

我有一些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)

我试图谷歌搜索“ Jquery内联控制结构”,但没有提出太多。

以下是entire function的pastebin供参考。我猜测代码可以改写,但我没有参考改变它。代码实际上有效,所以我不确定它本身是否一定是语法错误。

2 个答案:

答案 0 :(得分: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>');
      }
    });

使用ifelse的大括号总是更安全。它永远不会导致问题,偶尔可以防止意外错误(通常在以后编辑代码时)。

答案 1 :(得分:0)

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