ФорумПрограммированиеJavaScript → jquery и animate

jquery и animate

  • Z-MODe

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 6 апреля 2009 г. 8:01

    Есть функция, которая дивы двигает, вправо - влево.
    	function getPage ( page ) {

    var pageID = "#"+page;
    var currentPage = $("#lenta div.contentBox:visible").attr("id");

    if ( page != currentPage ) {
    $(pageID).show();

    if (parseInt($(pageID).css("left")) > 0) {

    $("#"+currentPage).animate({"left": "-2000px"}, "fast").hide(100);
    $(pageID).animate({"left": "50%"}, "slow");

    } else {

    $("#"+currentPage).animate({"left": "3000px"}, "fast").hide(100);
    $(pageID).animate({"left": "50%"}, "slow");

    }
    }

    }


    НО. когда быстро щёлкаешь по кнопкам, которые вызывают эту функция. то первая строка с анимацией не срабатывает.
    Т.е. как я понял если работает функция animate при вызове её снова, глушится другая, но в тоже время глушится именна та строка которая уводит блок
    $("#"+currentPage).animate({"left": "3000px"}, "fast").hide(100);
    или
    $("#"+currentPage).animate({"left": "-2000px"}, "fast").hide(100);


    Есть мысль только чтобы отключать кликабельность ссылок на секунду.
    но хотелось бы другую
  • phpdude

    Сообщения: 26618 Репутация: N Группа: в ухо

    Spritz 6 апреля 2009 г. 8:07, спустя 5 минут 58 секунд

    ты наверняка шутишь … animate потом хайд …. и у тебя это работает? анимейт - выполняется таймером в отдельном потоке от основного жса. у тебя по сути начинается анимация, почти сразу исчезает элемент, потом когда снова кликаешь или тп все сбивается, начинается анимация не оттуда или не туда короче все не как должно ?
    Сапожник без сапог
  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 6 апреля 2009 г. 8:23, спустя 15 минут 23 секунды

    не страдай хуйней прочитай про параметр queue
    http://docs.jquery.com/Effects/animate#paramsoptions
  • Z-MODe

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 6 апреля 2009 г. 8:37, спустя 14 минут 7 секунд

    Работает)) единственный косяк это когда злостно тыкаешь по ссылкам..

    чёто queue не помог..


    $("#"+currentPage).animate({"left": "-2000px","height" : "hide"}, { queue:false, duration:600 });
    $(pageID).animate({"left": "50%"}, { queue:false, duration:600 });
  • Trej Gun

    Сообщения: 5299 Репутация: N Группа: в ухо

    Spritz 6 апреля 2009 г. 8:54, спустя 16 минут 41 секунду

    так работает или нет?
  • Z-MODe

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 6 апреля 2009 г. 8:58, спустя 4 минуты 49 секунд

    ничего не изменилось.. работает, но если быстро щёлкать по ссылкам то анимация по уведению блока не срабатывает..

Пожалуйста, авторизуйтесь, чтобы написать комментарий!