Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.04.2010, 10:34
Аспирант
Отправить личное сообщение для namez Посмотреть профиль Найти все сообщения от namez
 
Регистрация: 21.11.2008
Сообщений: 52

Отмена события preventDefault() , поясните пожалуйста
Здравствуйте! Поясните пожалуйста нубу.

Есть такой код:

$("#header .menu ul li a, #header table td a").click(function(e){
    e.preventDefault();
    $(this).animate({"opacity":0.3}, "fast").animate({"opacity":1}, "fast");
    ;}
    );


Я в общем-то не понимаю как вернуть событие, то есть мне нужно чтобы сначала выполнился эффек animate у ссылки а затем только сделать переход по ней.

В моем случае перехода не случается - только эффект 8(
Спасибо заранее.
Ответить с цитированием
  #2 (permalink)  
Старый 15.04.2010, 11:09
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,578

$(this).animate({"opacity":0.3}, "fast").animate({"opacity":1}, "fast", function(){document.location = $(this).attr('href');});
Ответить с цитированием
  #3 (permalink)  
Старый 15.04.2010, 14:10
Аспирант
Отправить личное сообщение для namez Посмотреть профиль Найти все сообщения от namez
 
Регистрация: 21.11.2008
Сообщений: 52

micscr спасибо большое, document.location вот оно.

У меня небольшие изменения в коде, жирным выделил. Тут анимация происходит не с "а", а с вложенным span'ом c классом .back.
Так вот в таком случае как правильно записать тк сейчас атрибут к ссылке не добавляется те ссылки не работают после клика.

$("#header .menu ul li a, #header table td a").click(function(e){
    e.preventDefault();
    [B]$(this).find(".back")[/B].animate({"opacity":0.3}, "fast").animate({"opacity":1}, "fast", function(){document.location = $(this).attr('href');});
    }
    );
Ответить с цитированием
  #4 (permalink)  
Старый 15.04.2010, 14:54
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,578

Судя по вашему вопросу вы совсем плохо разбираетесь в теме .
Создайте переменную(замыкание) на ссылку и ее используйте.

Ну и представлю вариант на Шнобелевскую премию :
document.location = $(this).closest('a').attr('href');
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск