Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Определенный class при определенном домене (https://javascript.ru/forum/misc/69868-opredelennyjj-class-pri-opredelennom-domene.html)

Pushist 24.07.2017 12:45

Определенный class при определенном домене
 
Суть вопроса вот в чем, сайт доступен по 2-ум доменам.
Требуется реализовать разный язык сайта в зависимости от того по какому домену зашел человек.
Текст я пишу сам, на разных языках (гугл и т.п. переводчики не подходят, т.к. сайт инженерный и требуется перевод технического текста)

Идея такая, я пишу текст под разными class, но при этом если через .com захожу, то у определенного class значение display:none появляется, другой соответственно видно.

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

ruslan_mart 24.07.2017 14:04

[class^="lang_"] {
    display: none;
}


<div class="lang_en">Eng</div>
<div class="lang_ru">Rus</div>



var e = document.querySelector('.lang_' + (window.location.domain === 'ru.site.com' ? 'ru' : 'en'));

for(var i = 0; i < e.length; i++) {
    e[i].style.display = 'block';
}

//или

var s = document.createElement('style');
s.textContent = '.lang_' + (window.location.domain === 'ru.site.com' ? 'ru' : 'en') + '{display:block !important}';
document.head.appendChild(s);

laimas 24.07.2017 15:11

Цитата:

Сообщение от Pushist
Требуется реализовать разный язык сайта в зависимости от того по какому домену зашел человек.

Если язык зависит от домена, то зачем же на каждом держать конструкции для обеих языков?

Маэстро 24.07.2017 15:47

Цитата:

Сообщение от Pushist (Сообщение 459423)
Может быть кто-то подскажет как сделать, желательно с кодом. Или идеи как это реализовать проще.

Прописывайте свои тексты не прямо в коде программы, а в JS-массив. Массив расположите в отдельном файле, например, messages.js
В секции стилей укажите загрузку данного файла

<script src="messages.js"></script>

var sc  = {'автомобиль','самолет',..};
// на другом сайте:
var sc  = {'car','airplane',...};

alert(sc[0]);

На один сайт положите один файл messages.js, на другой - messages.js с другим языком.
(это при условии, что под разные домены на сервере выделены разные папки)


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