JQuery проблема с переключением событий запускается только на 2-й клик - PullRequest
0 голосов
/ 30 марта 2010

Может кто-нибудь объяснить, почему следующий jquery только запускает 2-е событие переключения и как это исправить? В частности, каждый раз, когда я щелкаю вложенный элемент , появляется предупреждение «2-й щелчок».

Я проверил селектор, чтобы убедиться, что он правильно выбирает элемент, и, по крайней мере, он вставил класс без проблем.

Селектор выбирает самый последний узел в неупорядоченном списке с тегом привязки.

$("#nav li:not(:has(li)) a").toggle(function() { //1st click
              alert("1st Click");
        }, function() { //2nd click
            alert("2nd Click");
        });

Вложенная HTML-структура, которая не работает:

<ul id="nav">
    <li>
      <span>stuff</span>
      <a href="#">Cat 1</a>
        <ul>
           <li>
               <span>stuff</span>
               <a href="#">Subcat1</a>
                 <ul>
                    <li>
                       <span>Stuff</span>
                       <a href="#">Subcat Details</a>
                    </li>
                 </ul>
           </li>
        </ul>
    </li>
</ul>

Однако, это работает правильно и запускает оба события щелчка:

<ul id="nav">
    <li>
      <span>stuff</span>
      <a href="#">Cat 1</a>
    </li>
</ul>

1 Ответ

1 голос
/ 30 марта 2010

Преобразование в ответ, чтобы закрыть это

Ваш обработчик / код работает нормально при тестировании здесь, похоже, у вас есть другие обработчики событий, которые либо ошибаются, либо блокируют возникновение щелчка на этих привязках.

Убедитесь, что другие обработчики событий на этих вложенных <a> элементах работают правильно, похоже, ошибка есть.

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