Насколько я знаю, нет никакого CSS или jQuery-специфичного селектора, который соответствовал бы всем числовым значениям (например, [0-9]
или \d
в регулярных выражениях); поправьте меня, если я ошибаюсь!
Но: поскольку вы даете каждому <span>
класс "фрукты", вы можете просто получить к ним доступ с помощью span.fruit
. Это вернет массив, который вы можете перебрать с помощью each()
. this
будет установлен на текущий элемент в этой функции, так что вы можете проверить желаемый идентификатор.
$('.fruit').each(function(){
// this.id will be your numeric ID of the current item
});
Кроме того, если ваши элементы пронумерованы непрерывно (например, 1, 2, 3, а не 2, 1, 3), вы можете использовать :nth-child
-pseudo-selector для доступа к одному из <span>
s.
Если все это не работает для вас; например если вам нужно использовать класс .fruit
где-то еще, последний вариант, о котором я могу подумать, это то, что вы вручную выполняете итерации по элементам в JavaScript.
for( var x = 0; x <= 3; x++ ) {
var e = $('#'+x);
// Do something with the element; or add it to an array of all the elements
}
Редактировать: Если вы не знаете, сколько элементов будет на странице, но хотите найти соответствие для каждого числового идентификатора, вы можете использовать следующее.
$('*').each(function(){
if( this.id.match(/\d+/) ) {
// do something with an element which has a numeric ID
}
});
Конечно, предпочтительнее использовать приведенный выше пример, если вы знаете, сколько предметов будет, потому что он, вероятно, быстрее.