Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 03.08.2017, 08:23
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

samdo,
<a href="#" onclick="enRu()">English/Russian</a>
Ответить с цитированием
  #12 (permalink)  
Старый 03.08.2017, 08:31
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

samdo,
не прочел сначала чего надо. Но все это ни к чему, то что rewrite не работает в nginx, это не так, просто у него иные инструкции. Есть даже готовые онлайн конверторы инструкций .htaccess для файла конфигурации nginx.
Ответить с цитированием
  #13 (permalink)  
Старый 03.08.2017, 08:33
Кандидат Javascript-наук
Отправить личное сообщение для samdo Посмотреть профиль Найти все сообщения от samdo
 
Регистрация: 27.05.2017
Сообщений: 112

Сообщение от laimas Посмотреть сообщение
Если кнопки, это ссылки, так пропишите сразу в каждой нужный URL: domain/ru и domain/en, и не надо никаких скриптов.
Но в этом случае мы при переключении со страницы site.ru/some-page (например, на английский) мы попадаем на главную страницу (site.ru/en), а нам надо попасть на site.ru/en/some-page

P.S.рони, что-то не срабатывает
Ответить с цитированием
  #14 (permalink)  
Старый 03.08.2017, 08:37
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от samdo
Но в этом случае мы при переключении со страницы site.ru/some-page (например, на английский) мы попадаем на главную страницу (site.ru/en), а нам надо попасть на site.ru/en/some-page
Это смотря как вы будете в кнопке ссылки формировать. У вас же раздельные домены, а значит на каждом по одной кнопке выбора языка. Кнопку кто выводит? Сервер. Ему что сложно подставлять в url ссылку адреса текущей страницы, но только другого домена?
Ответить с цитированием
  #15 (permalink)  
Старый 03.08.2017, 08:44
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

samdo,
попробуйте так, копировать целиком
<script>
function enRu() {
   var x = window.location+"";
   var reg = /\/en\//;
   if(reg.test(x)) x = x.replace(reg,"/");
   else {
   var n = x.lastIndexOf("/");
   x = x.slice(0,n) + "/en" + x.slice(n)
   }
   window.location = x
}

  </script>
<a href="#" onclick="return enRu()">English/Russian</a>
Ответить с цитированием
  #16 (permalink)  
Старый 03.08.2017, 08:57
Кандидат Javascript-наук
Отправить личное сообщение для samdo Посмотреть профиль Найти все сообщения от samdo
 
Регистрация: 27.05.2017
Сообщений: 112

рони, почти

Добавляется "/en/", но в конец URl-a (получается вот так site.ru/some-page/en/), а нам нужно вот так site.ru/en/some-page/
Ответить с цитированием
  #17 (permalink)  
Старый 03.08.2017, 09:03
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

samdo,
function enRu() {
   var x = window.location+"";
   var reg = /\/en\//;
   if(reg.test(x)) x = x.replace(reg,"/");
   else {
   x = x.replace("site.ru","site.ru/en");
   }
   window.location = x
}
Ответить с цитированием
  #18 (permalink)  
Старый 03.08.2017, 09:18
Кандидат Javascript-наук
Отправить личное сообщение для samdo Посмотреть профиль Найти все сообщения от samdo
 
Регистрация: 27.05.2017
Сообщений: 112

рони, ДА, это оно, работает

P.S. А реально ли, чтобы при наведении на эту ссылку в строке состония показывался нужный адрес (site.ru/en/some-page), а не "site.ru/en/#" (надеюсь я не сильно обнаглел )
Ответить с цитированием
  #19 (permalink)  
Старый 03.08.2017, 09:19
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,795

Сообщение от samdo
Но в этом случае мы при переключении со страницы site.ru/some-page (например, на английский) мы попадаем на главную страницу (site.ru/en), а нам надо попасть на site.ru/en/some-page
$_SERVER['HTTP_REFERER'] не определяется?
Ответить с цитированием
  #20 (permalink)  
Старый 03.08.2017, 09:25
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

samdo,
перестаньте хренью маяться, это не JS работа, этим должен заниматься сервер, формируя сразу нужный URL в ссылке:

<a href="http://site.ru/<?=ltrim($_SERVER['REQUEST_URI'], '/en')?>">Russian</a>
<a href="http://site.ru/en<?=$_SERVER['REQUEST_URI']?>">English</a>

Последний раз редактировалось laimas, 03.08.2017 в 10:08.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как извлечь адрес картинки, указанный внутри функции onclick? sidarvik Events/DOM/Window 19 04.02.2013 01:05
Как добавить методы объекту после конструирования. DragorWW Общие вопросы Javascript 23 21.01.2013 20:39
Как поучить скомпелированный код страницы? Petrov.I1969 Общие вопросы Javascript 14 21.05.2011 09:34
как поставить обработчик события на загрузку страницы? mister_maxim Events/DOM/Window 7 17.05.2011 21:22
переход на выбор сайт через поле ввода url (как убрать функцию "открыть все") ? rashid86 Элементы интерфейса 1 31.03.2011 14:54