#javascript #jquery #url #uri
#javascript #jquery #url #uri
Вопрос:
Есть веб-сайт example.com . Я хочу изменить все ссылки на этом веб-сайте, чтобы они отображались на разных хостах. Мне нужно изменить эти типы ссылок:
<a href="page.html?attr=1">Link</a>
<a href="example.com/page2.html?attr=1">Link</a>
<a href="subdomain.example.com/page3.html?attr=1">Link</a>
Для
<a href="mirror.com/page.html?attr=1">Link</a>
<a href="mirror.com/page2.html?attr=1">Link</a>
<a href="subdomain.mirror.com/page3.html?attr=1">Link</a>
Оставив URL-адреса form и js как есть. Интересно, какой менее болезненный способ сделать это? Я знаю, что синтаксический анализ URL-адресов с помощью регулярных выражений — это плохо, так как я могу проанализировать эти URL-адреса как класс и выполнять с ними операции?
Ответ №1:
вы могли бы попробовать это:
$('a').each(function(){
var $me = $(this);
var url = $me.attr('href');
var newUrl = url.replace('example','mirror');
if(newUrl.indexOf('mirror') < 0) newUrl = 'mirror.com/' url;
$me.attr('href',newUrl);
})
это изменит все <a>
и только их (без форм и href скрипта)