Мой синтаксис jQuery здесь неправильный? - PullRequest
1 голос
/ 25 июня 2009

Я изучаю jQuery и обнаружил, что этот код не работает:

<script type="text/javascript">
  $(document).ready(
    /* Navigtion Stuff */
      function(){
        $('.menu ul').hover(
          function(){
            $(this).parent().addClass("active");
          },
          function(){
            $(this).parent().removeClass("active");
          }
        )
      },
      function(){
        $(".menu").parents("li").addClass("active");
      }
    );
</script>

Первая функция делает то, что должна. Второй функции нет. Мой синтаксис плох? Если нет, то я чувствую, что мой код конфликтует с каким-то другим Javascript на странице.

Заранее спасибо!

Ответы [ 3 ]

4 голосов
/ 25 июня 2009

у вас небольшая путаница с скобками

 $(document).ready(
/* Navigtion Stuff */
  function(){
    $('.menu ul').hover(
      function(){
        $(this).parent().addClass("active");
      },
      function(){
        $(this).parent().removeClass("active");
      }
    );
    $(".menu").parents("li").addClass("active");
  }
);

лучше.

3 голосов
/ 25 июня 2009

Функция готовности принимает только один параметр. Вы пытаетесь передать две функции.

функция 1:

function(){
        $('.menu ul').hover(
          function(){
            $(this).parent().addClass("active");
          },
          function(){
            $(this).parent().removeClass("active");
          }
        )
      }

функция 2:

function(){
        $(".menu").parents("li").addClass("active");
      }

Чтобы связать событие hover с $ ('. Menu ul') и добавить класс 'active' к $ (". Menu"). Parent ("li"), вам нужно сделать

$(document).ready(function() {
        /* Navigtion Stuff */

            $('.menu ul').hover(
              function(){
                $(this).parent().addClass("active");
              },
              function(){
                $(this).parent().removeClass("active");
              }
            )
            $(".menu").parents("li").addClass("active");
        });
2 голосов
/ 25 июня 2009

Функция готовности принимает только одну функцию в качестве параметра. См. Приведенные выше сообщения для примеров.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...