Как в ссылках заменить атрибут href на другой и закодировать путь в Base64
На сайте генерируются внешние ссылки с классом
.Button такого типа <a class="button" href="https://site.ru/dsfssg">Ссылка</a> Имея класс "button", как закодировать содержимое HREF в Base64 и после кодировки заменить атрибут href на придуманный атрибут link Ссылки при этом должны иметь на выходе приблизительно вот такой вид <a class="button" link="aHR0cHM6Ly9zaXRlLnJ1L2RzZnNzZw==">Ссылка</a> и работать как ссылка, то-бишь при клике на нее переходишь на ту страницу, которая закодирована. У меня есть вот такой код const o = document.querySelector('.button') let v = o.href o.removeAttribute('href') v = btoa(v) o.setAttribute('link', v) o.addEventListener('click', e => { let v = e.target.getAttribute('link') v = atob(v) location.href = v }) Но он работает только с первой ссылкой. Добрые люди подсказали что нужно использовать делегирование событий, но в js я вообще ничего не понимаю. Заранее спасибо с уважением! |
sochi-russia,
а смысл, если есть Ctrl + U — исходный код страницы? |
Цитата:
https_://uniticket._ru/country/crimea ![]() В исходном коде их ссылки остаются зашифрованными. Вся идея заключается в том, что ссылки внешние, передается "вес - seo вкусняшки)" страницы внешнему ресурсу, что в плане Seo не лучший вариант для моего сайта, нужно ссылку сделать не ссылкой и зашифровать, что в плане Seo не должно негативно сказаться на сайте |
Цитата:
|
Если это для сео, то: с одной стороны - пофиг что настоящие ссылке где-то в js коде есть, мы не от хакера их прячем, а от бота; а с другой - бот читает страницу до твоего скрипта, т.е. он увидит все ссылки как есть. Изменять ссылки тебе всё равно нужно на сервере.)
|
Часовой пояс GMT +3, время: 23:47. |