определить строку анимации как переменную - PullRequest
0 голосов
/ 04 июня 2009

Можно ли определить строку анимации как переменную?

Например (это то, что я думаю, но не работает?):

var speed = 500;
var dothis = $("#div").slideUp('speed');
            $("#div").slideDown('speed');
            $("#div").animate({height: "0px"}, 'speed');
$("button").click(function () { 
      $(this).dothis();
    });

Я не совсем уверен, как его настроить.

Ответы [ 2 ]

1 голос
/ 04 июня 2009

Вы также можете расширить функцию Даниэля, чтобы она работала с любым переданным ей элементом, передав функцию в качестве аргумента. Например, передавая ему элемент или селектор:

var dothis = function(el) {
    $(el).slideUp('speed');
    [...]

Кроме того, нет разницы между размещением каждого эффекта на отдельной строке или связыванием их, например, $ (el) .slideUp (). SlideDown (). Fade () и т. Д.

Если вы поместите их в отдельные строки, они будут выполняться почти одновременно, тогда как их объединение в очередь ставит их в очередь для выполнения по порядку.

1 голос
/ 04 июня 2009

Похоже, что вы пытаетесь выполнить серию действий позже ... в этом случае вы можете просто инкапсулировать все свои команды в функции:

var dothis = function() {
    $("#div").slideUp('speed');
    $("#div").slideDown('speed');
    $("#div").animate({height: "0px"}, 'speed');
    $("button").click(function () { 
      $(this).dothis();
    });
}

А потом вы можете выполнить все команды одновременно, вызвав функцию:

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