Переключение класса отключает мою ссылку - PullRequest
1 голос
/ 31 декабря 2011

У меня есть этот jquery:

$(".button").toggle(function() {
$(this).find(".button").addClass('disable');    
},
function(){
$(this).find(".button").removeClass('disable');
});

Моя HTML-ссылка для .button:

<a class="button" href="/users/sign_up">

Мой класс отключения css:

.disable {
          background: none repeat scroll 0 0 #F2F0F0 !important ;           
          border-color: #D1CDCD;
          color: #D1CDCD !important;    
          cursor:default;   
          text-shadow: 0 -1px rgba(34, 25,25,0.01)!important;                           
          cursor:pointer; box-shadow: none !important;
          }

Почему я не могу зайти в / users / sign_up, когда нажимаю кнопку? Класс .disable добавлен и работает нормально, но ссылка не берется.

1 Ответ

1 голос
/ 31 декабря 2011

Обнаружено в документации jQuery :

Реализация также вызывает .preventDefault () для события, поэтому ссылки не будет следовать и кнопки не будут нажиматься, если .toggle () имеет был вызван на элемент.

Было бы легко открыть страницу вручную в конце функции переключения:

window.location = $(".button").attr('href');

Вот пример в JSFiddle . Чтобы это заработало, мне пришлось заменить $(this).find(".button") на $(".button).

...