Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
1 / 1 / 0
Регистрация: 07.03.2018
Сообщений: 31

Показ текста в зависимости от страны

07.03.2018, 23:03. Показов 2643. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Подскажите, как можно реализовать отображение определенного текста на странице в зависимости от страны посетителя. То есть как то так:

Определение страны:
если Страна1 - "Привет Страна1, как дела"
если Страна2 - "Спокойно ночи, Страна2"
если все остальные "Информация не доступна".

Как то так.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.03.2018, 23:03
Ответы с готовыми решениями:

Менять background в зависимости от страны посетителя
Всем доброго времени суток! Для модератора! в ветке форума HTML/CSS уже создавал эту тему, но простит меня модератор возможно здесь...

Показ/скрытие текста
помогите написать скрип...нужно чтоб часть текта была написана и стояла кнопка --показать весь текст при нажатии на которую срытый текст...

Показ текста по выбору из выпадающего списка
Вот на этой странице http://java-gems.lark.ru/yuayva.html есть скрипт показа текста по выбору из выподающего меню показывая 1, 2 или 3, но...

4
98 / 101 / 30
Регистрация: 21.10.2012
Сообщений: 320
07.03.2018, 23:11
Ветвления либо свич-кейс.
0
1 / 1 / 0
Регистрация: 07.03.2018
Сообщений: 31
07.03.2018, 23:23  [ТС]
Хорошо. А чем определить страну? Мне нужно чтобы человек не выбирал страну из списка, а она определялась автоматически.

Добавлено через 2 минуты
Я находил такой кусочек кода на JSON, но не смог его правильно прикрутить:

JSON
1
2
3
4
5
6
7
8
9
10
11
$.get("http://ipinfo.io", function(response) {
    if(response.country == "US") {
        $("#welcome").html("Welcome, American!");
    }
    else if(response.country == "GB") {
        $("#welcome").html("Welcome, Brit!");
    }
    else {
        $("#welcome").html("Hello!");
    }
}, "jsonp");
Добавлено через 5 минут
Или еще один нашел кусочек, но тоже не смог его реализовать. Почему то не отрабатывает:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
<script type='application/javascript'>
  
   $.getJSON("http://api.hostip.info/get_json.php", function(data){
           CountryCode = data.country_code;
           if (CountryCode == "RU") {window.location.replace("http://site.ru"); }
      else if (CountryCode == "US") {window.location.replace("http://site.us"); }
      else                          {window.location.replace("http://site.ph"); };
 
});
    
</script>
0
 Аватар для evikza
968 / 530 / 244
Регистрация: 20.05.2015
Сообщений: 776
08.03.2018, 07:51
Лучший ответ Сообщение было отмечено 404_NotFound как решение

Решение

404_NotFound, есть несколько вариантов решить проблему. Воспользоваться сервисом, типа ipinfo.io и использовать его возможности.

HTML5
1
<div class="container"></div>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var el = document.querySelector('.container');
 
var xhr =
    typeof XMLHttpRequest != 'undefined'
        ? new XMLHttpRequest()
        : new ActiveXObject('Microsoft.XMLHTTP');
 
xhr.open('GET', 'https://ipinfo.io/json', true);
xhr.responseType = 'json';
xhr.onreadystatechange = function() {
    if (xhr.readyState == 4) {
        if (xhr.status == 200) {
            el.textContent = xhr.response.country == 'RU' ? 'RUSSIA' : xhr.response.country == 'US' ? 'USA' : 'OTHER COUNTRY';
        }
    }
};
xhr.send();
Демонстрация

+ с использованием jQuery (подключите библиотеку JQUERY):

HTML5
1
<div class="container"></div>
JavaScript
1
2
3
$.get('https://ipinfo.io/json', function(response) {
    $('.container').text(response.country == 'RU' ? 'RUSSIA' : response.country == 'US' ? 'USA' : 'OTHER COUNTRY');
}, 'json');
Демонстрация

И на десерт. Изменяем содержимое блока через CSS + navigator.languages. Никогда не используйте данный способ.

HTML5
1
<div class="container"></div>
CSS
1
2
3
4
5
6
7
8
9
10
11
.container:lang(ru):after {
    content: "RU";
}
 
.container:lang(en):after {
    content: "EN";
}
 
.container:not(:lang(ru)):not(:lang(en)):after {
    content: "OTHER COUNTRY";
}
JavaScript
1
2
3
4
5
var locale = navigator.languages
    ? navigator.languages[0]
    : navigator.language || navigator.userLanguage;
 
document.querySelector('.container').setAttribute('lang', locale.substring(0, 2));
Демонстрация
1
1 / 1 / 0
Регистрация: 07.03.2018
Сообщений: 31
08.03.2018, 11:35  [ТС]
Спасибо за очень подробный ответ
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.03.2018, 11:35
Помогаю со студенческими работами здесь

Показ модального окна при изменении текста в тегах <p>
всем привет! такая ситуация, есть корзина, которая показывает по умолчанию такой тест &quot;Кол-во товара:0&quot;, схеме, человек кликает...

Менять background в зависимости от страны посетителя
Доброго Всем времени суток! скажите пожалуйста реально ли менять фон сайта в зависимости от страны посетителя на html+js или каких либо...

показ адсенса в зависимости от региона IP
Можно ли сделать так, что бы адсенс показывался только посетителям не из определённой страны?

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

Показ блоков в зависимости от выбора select
&lt;select id=&quot;form1&quot;&gt; &lt;option value=&quot;knigi&quot;&gt;Книги&lt;/option&gt; &lt;option value=&quot;buklety&quot;&gt;Буклеты&lt;/option&gt; &lt;/select&gt; &lt;div...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru