Есть два кода, которые работают в отдельности, но ни вместе. И это очень печально
Первый:
/* Копирование содержимого ячеек, по клику */
(function(){
let tds = document.querySelectorAll('span, div.a19')
let tds_length = tds.length
for(let i = 0; i < tds_length; i++){
tds[i].addEventListener('click', copyFanc)
}
function copyFanc(event){
let element = event.target || event.srcElement;
let text = element.innerText
navigator.clipboard.writeText(text).then(function() {
console.log('Текст скопирован!')
}, function(err) {
console.error('Ошибка копирования: ', err)
});
}
})()
Второй:
/* Копирование скрытого текста, по клику */
initAutoCopy( document.querySelectorAll('.copy') );
function initAutoCopy(elems){
let input = document.createElement('input');
input.style.display = "none";
document.body.appendChild(input);
for( let i = 0; i < elems.length; i++ ){
elems[i].addEventListener('click', function(){
input.style.display = "block";
input.value = this.dataset.copy;
input.select();
document.execCommand('copy');
input.style.display = "none";
});
}
}
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Ещё есть код, который я не могу продублировать, для других классов.
Если скопировать этот код и заменить в нём классы, то дубль работать не будет. (Или оба не будут, не помню уже).
/* Скрытия / Показ блока */
let a18 = document.querySelectorAll('.a18');
let a17 = document.querySelectorAll('.a17');
for( let i = 0; i < a18.length; i++ ){
a18[i].addEventListener('click', function(){
a17[i].classList.toggle('visi');
});
}