Добавляя функцию копирования в буфер обмена в моем приложении, clipboard
предлагает использовать data-clipboard-target
для нацеливания на id
элемента, который вы хотите скопировать.
Поскольку я создаюВ приведенном ниже списке циклически перебираются записи Job
, все элементы используют один и тот же id
(#bar).
Как я могу сделать функцию буфера обмена более надежной, чтобы перебирать различные элементы списка и выбирать href
из job.url
?Я пытался использовать nextElementSibling
, но безуспешно.
index.html.haml
- jobs.each do |job|
%li
%button{class: 'clipboard-btn', "data-clipboard-action": "copy", "data-clipboard-target": "#bar"}
= image_tag('link.svg')
.source
= link_to "(" + uri_parse(job.url) + ")", job.url, id: 'bar'
application.js
new Clipboard(".clipboard-btn", {
text: function(trigger) {
const query = trigger.getAttribute('data-clipboard-target');
const target = document.querySelector(query);
return target.getAttribute('href');
}
})