Содержание
Приветствую, коллеги! Сегодня, в материале этой статьи, мы научимся определять город на автомате и по условию показывать какой-то определенный контент.
Для чего это?
Я буду рассматривать пример, когда нам нужно определить город и показать его посетителю, в добавок отобразить ему определенный номер телефона. Думаю, многие видели такую фишку на множестве «больших» сайтов. И так, поехали!
Кстати, о похожей фишке я писал в предыдущей статье, обязательно посмотрите (в блоке ссылок).
Что понадобится?
Нам понадобится всего пара манипуляций, каких-то сверх сложностей не требуется. Первым делом, как обычно, подключаем необходимые скрипты. Если библиотека jQuery уже подключена, то второй раз ее не подключаем.
<script src="http://yastatic.net/jquery/2.1.1/jquery.min.js"></script>
<script src="https://api-maps.yandex.ru/2.0/?load=package.full&lang=ru-RU"></script>
Следом, наш скрипт, который и организовывает волшебство.
jQuery(document).ready(function($) {
ymaps.ready(function() {
var geolocation = ymaps.geolocation;
if (geolocation.city == undefined) {
// Если город не определился, то выводим "неопределен"
// По умолчанию город Москва (указываем в html)
$('.ci-ty span').html('неопределен');
} else {
$('.ci-ty span').html('' + geolocation.city);
}
// Для нужных городов прописываем свои телефоны
// Для других городов покажется номер по умолчанию - "+7 (123) 000-00-00" (указываем в html)
if (geolocation.city == "Москва") {
$('.num-ber').html('+7 (123) 111-11-11')
};
if (geolocation.city == "Химки") {
$('.num-ber').html('+7 (123) 222-22-22')
};
if (geolocation.city == "Зеленоград") {
$('.num-ber').html('+7 (123) 333-33-33')
};
});
});
Читайте также:
- jQuery: подмена контента на сайте в зависимости от ГЕО
- Скрываем элемент: удаление класса по клику в любом месте страницы
- Как с помощью jQuery добавить атрибут к элементу при клике
Далее, добавляем html блоки или указываем в скриптах уже существующие при помощи классов. Также в этих блоках указываем город и телефон по умолчанию или оставляем разметку пустой.
<!-- Указываем текст для города по умолчанию -->
<div class="ci-ty">Ваш город: <span>Москва</span></div>
<!-- Указываем текст для телефона по умолчанию -->
<div class="num-ber">+7 (123) 000-00-00</div>
Пример на Codepen
Смотрим реальный пример по ссылке ниже.
codepen.io/CmsWp/pen/vYNZJvj
На этом все, вот такое простое и незамысловатое решение которое точно пригодится если вы разрабатываете веб проекты на заказ.
Заходите еще, будет куда больше нового и интересного. С вами был Дмитрий, до встречи в следующей новости!