Переключение «активного» класса с jQuery, стиль остается при повторном нажатии кнопки, но класс удаляется в Firefox - PullRequest
1 голос
/ 28 декабря 2010

У меня проблема.- только в Firefox

Когда я использую jQuery для переключения класса «активный» в ссылке.Активный стиль сохраняется, если я снова нажму на ссылку.Он остается видимым, пока я не нажму где-нибудь еще на странице, но только в Firefox, но класс был удален.

КОД:

$('#quick-add-click').click( function() {
  $(this).find('a').toggleClass('active');
});

У кого-нибудь есть подобные проблемы?Есть ли простое исправление?

Ответы [ 4 ]

0 голосов
/ 06 января 2011

ОК, поэтому я исправил это (хакерским способом), добавив onfocus="blur()" к элементу привязки

0 голосов
/ 28 декабря 2010

Используете ли вы Mootools или Mootools загружается, даже если вы его не используете (происходит автоматически с системами Joomla). У меня была проблема с Firefox / Mootools / VEMap (Bing Maps), возможно, у вас похожая проблема.

0 голосов
/ 28 декабря 2010

Не удалось воспроизвести.

Однако, возможно, вы можете проверить, работает ли он без переключения?

$('#quick-add-click').click( function() {
  if($(this).find('a').hasClass('active')) {
    $(this).find('a').removeClass('active');
  } else {
    $(this).find('a').addClass('active');
  }
});
0 голосов
/ 28 декабря 2010

Минимальный пример, не вижу такого поведения в OSX Firefox

<!DOCTYPE html>
<html>
    <head>
        <title>Test</title>
        <style>
            a.active { color: #f00; }
        </style>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
        <script>
            $(function() {
                $('#quick-add-click').click(function() {
                    $(this).find('a').toggleClass('active');
                });
            });
        </script>
    </head>
    <body>
        <div id="quick-add-click">
            <a href="#">Foobar</a>
        </div>
    </body>
</html>

Не могли бы вы проверить с Firebug, откуда этот стиль, когда активного класса больше нет?

...