Изменение ссылок на JS

Тема в разделе "Другие языки", создана пользователем stasdre, 31 мар 2010.

Статус темы:
Закрыта.
Модераторы: Цукер
  1. stasdre

    stasdre Постоялец

    Регистр.:
    15 янв 2010
    Сообщения:
    125
    Симпатии:
    18
  2. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    HTML:
    
    <a href="http://site.ru/ru/about-us/" onclick="window.location.href='http://site.ru/en/about-us/'; return false;">ссылка</a>
    
     
  3. stasdre

    stasdre Постоялец

    Регистр.:
    15 янв 2010
    Сообщения:
    125
    Симпатии:
    18
    Не совсем то. Мне нужно взять один url и заменить его на другой. Потому как url может быть любой а только будет менять ru и en
    Я так понимаю здесь нужно приминить регулярные выражения или может есть какието готовые решения
     
  4. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    тогда может без яваскрипта, а с редиректом сделать, надо создать на сайте файл
    .htaccess в котором поместить код
    Код:
    RewriteEngine on
    RewriteBase /
    RewriteRule ^ru/(.*)?$ en/$1 [QSA,L]
    
    если надо чтоб и в адресной строке браузера изменялся адрес тогда
    Код:
    RewriteEngine on
    RewriteBase /
    RewriteRule ^ru/(.*)?$ http://www.moi-site.ru/en/$1 [QSA,L]
    
    или перенаправить с кодом статуса 301
    Код:
    Options +FollowSymLinks
    RewriteEngine on
    RewriteRule ^ru/(.*)?$ http://www.site.ru/en/$1 [R=301,L]
    
     
  5. stasdre

    stasdre Постоялец

    Регистр.:
    15 янв 2010
    Сообщения:
    125
    Симпатии:
    18
    Постараюсь объяснить по другому. Например сейчас находимся на сайте с таким url: Перейти по ссылке На странице есть ссылка вида
    Код:
    <a href="#" onclick="langue(); return false;">ENG</a>
    и есть скрипт с функцией langue()
    Код:
    <script type="text/javascript">langue(){....}</script>
    которая берет url Перейти по ссылке
    Вот как то так. Только я не могу понять что нужно для того чтобы поменять /ru/ на /en/
     
  6. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    тогда так при клике на ссылку запускается функция langue() , в функции ссылка из адресной строки браузера изменяется с /ru/ на /en/ и идёт переход по новой ссылке
    HTML:
    
    <script type="text/javascript">
    function langue(){
        window.location.href=window.location.href.replace(/\/ru\//gi, "/en/");
    }
    </script>
    <a href="#" onclick="langue();">ENG</a>
    
     
    stasdre нравится это.
  7. stasdre

    stasdre Постоялец

    Регистр.:
    15 янв 2010
    Сообщения:
    125
    Симпатии:
    18
    Вот это то что надо огромное спасибо!!;)
     
Статус темы:
Закрыта.