Как я могу использовать несколько селекторов jquery в дополнение к prev ()? - PullRequest
2 голосов
/ 17 мая 2019

Я пытаюсь объединить селекторы jquery, и я не уверен, как это сделать с помощью селектора :visible.

Например,

$('.my-class:hidden').velocity('fadeIn', {
    display: 'flex',
    complete: function () {
        //
    } 
});

$('.my-class:hidden').prev().velocity('fadeIn', {});

Я знаю, что обычно вы можетеделать такие вещи, как

$('.my-class', '.my-other-class').hide();

Использование .prev() - это то, что меня вешает.Я хотел бы попытаться сделать что-то вроде этого (очевидно, неправильно).

$('.my-class:hidden', '.my-class:hidden.prev()').velocity('fadeIn', {
    display: 'flex',
    complete: function () {
        //
    } 
});

Спасибо за любые предложения!

1 Ответ

2 голосов
/ 17 мая 2019

Вы можете использовать add, если хотите:

$('.my-class:hidden').add($('.my-class:hidden').prev()).velocity('fadeIn', {
    display: 'flex',
    complete: function () {
        //
    } 
});

Если вы хотите избежать повторения селектора, я думаю, вам нужно запомнить результат для переменной:

var myHidden = $('.my-class:hidden');
myHidden.add(myHidden.prev()).velocity('fadeIn', {
    display: 'flex',
    complete: function () {
        //
    } 
});

Примечание: Вы сказали:

Я знаю, что обычно вы можете делать такие вещи, как,

$('.my-class', '.my-other-class').hide();

Нет, выЯ не хотел бы вызывать $ с двумя такими строками, jQuery ожидает, что вторая будет контекстом или документом.Вы бы использовали одну строку с составным селектором:

$('.my-class, .my-other-class').hide();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...