Как добавить значение в пользовательский атрибут с помощью JQuery?

0

У меня есть элементы div.tile. Каждый из них имеет собственный атрибут "dist", например:

<div class="tile" dist="dist-3"></div>

теперь я хочу добавить значение "dist-5" к атрибуту "dist". Как это:

<div class="tile" dist="dist-3 dist-5"></div>

Как я могу это сделать?

После поиска я обнаружил следующее:

$('.tile').each(function(){ this.dist += "dist-5"; })

Но, как вы можете догадаться, это не сработает.

Я ищу элегантный способ сделать это, кроме tile.attr('dist', tile.attr('dist')+' '+'dist-5')

Теги:

1 ответ

0

Вам нужно использовать setter() setter, который принимает функцию как параметр

$('.tile').attr('dist', function (id, attr) {
    return attr + " dist-5";
})

Демо: скрипка

  • 0
    Это что-то вроде моего не элегантного хака, как уже упоминалось выше. Спасибо тем не менее

Ещё вопросы

Сообщество Overcoder
Наверх
Меню