Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Изменить все ссылки на сайте (https://javascript.ru/forum/css-html/67710-izmenit-vse-ssylki-na-sajjte.html)

Leon2110 03.03.2017 20:17

Изменить все ссылки на сайте
 
Добрый день, подскажите, можно ли с помощью js изменить все ссылки на сайте в которых есть стиль. Приведу пример что нужно, на сайте на некоторых страницах будут встречаться ссылки вида:

<a id="doc" href="http://site.ru/promo/test" target="_blank">Сайт</a>
<a id="doc" href="http://site.ru/promo/mir" target="_blank">Сайт</a>
<a id="doc" href="http://site.ru/promo/sopr" target="_blank">Сайт</a>


Задача в том, чтобы только к тем ссылкам, в которых есть к примеру id="doc" в конец добавлялась стока, вот что должно стать с ссылками выше в итоге:

<a id="doc" href="http://site.ru/promo/test?template=accessibility" target="_blank">Сайт</a>
<a id="doc" href="http://site.ru/promo/mir?template=accessibility" target="_blank">Сайт</a>
<a id="doc" href="http://site.ru/promo/sopr?template=accessibility" target="_blank">Сайт</a>

Тоесть в конец ссылок добавляется ?template=accessibility

рони 03.03.2017 20:22

Цитата:

Сообщение от Leon2110
можно ли с помощью js изменить все ссылки

да
Цитата:

Сообщение от Leon2110
в которых есть стиль

что такое стиль?
и почему все id одинаковы?

ruslan_mart 03.03.2017 20:24

Leon2110, id уникален, не должно быть больше одного. Предлагаю сменить id на class.

<a class="doc" href="http://site.ru/promo/test" target="_blank">Сайт</a>
<a class="doc" href="http://site.ru/promo/mir" target="_blank">Сайт</a>
<a class="doc" href="http://site.ru/promo/sopr" target="_blank">Сайт</a>


window.addEventListener('DOMContentLoaded', function() {
  var i, links = document.querySelectorAll('.doc');

  for(i = 0; i < links.length; i++) {
    links[i].search = 'template=accessibility';
  }
});

Leon2110 03.03.2017 20:25

Цитата:

Сообщение от рони (Сообщение 446261)
да

что такое стиль?
и почему все id одинаковы?

Да я не совсем правильно написал, наверное это селектор и похоже правильнее будет использовать class , т.к. они все одиковые будут. Или может для решения этой задачи нужно использовать что-то вообще другое.

Leon2110 03.03.2017 20:33

Цитата:

Сообщение от Ruslan_xDD (Сообщение 446262)
Leon2110, id уникален, не должно быть больше одного. Предлагаю сменить id на class.

<a class="doc" href="http://site.ru/promo/test" target="_blank">Сайт</a>
<a class="doc" href="http://site.ru/promo/mir" target="_blank">Сайт</a>
<a class="doc" href="http://site.ru/promo/sopr" target="_blank">Сайт</a>


window.addEventListener('DOMContentLoaded', function() {
  var i, links = document.querySelectorAll('.doc');

  for(i = 0; i < links.length; i++) {
    links[i].search = 'template=accessibility';
  }
});

То что нужно, работает отлично. Спасибо за помощь.


Часовой пояс GMT +3, время: 02:22.