0 / 0 / 0
Регистрация: 04.08.2016
Сообщений: 4
|
|
1 | |
Нужен совет по скрипту!04.08.2016, 17:04. Показов 523. Ответов 9
Метки всплывающее окно (Все метки)
Привет всем, уважаемые форумчане! Если кому не лень, прошу с советов С:
Дело вот в чем. Захотел на свой сайт разместить эдакое всплывающее окошко, которое показывает следующую инфу: "Name из города N только что совершил заказ". Нашел, значит, сайт, где есть подобная штука. Вот сам сайт (добавлен в ЧС поисковика из-за мошенничества этой конторы). Скопировал его с помощью Wget, отыскал сам код всплывающего уведомления (код в спойлере). Кликните здесь для просмотра всего текста
<script type="text/javascript">/**
var arr_buyer = { 'RU': { img: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAa0lEQVR42u3QwQkAMAgAM fdf2hYc4yIc6NPM7k659PMAAAAAAAAAAAAAAFy1AQAAAAAAAAAAAAAAAIC/zF2VAAAAAAAAAAAAAAAAAODqCQAAAAAAAAAAAAAAAAAAgGwAAAAAAAAAAAAAAER72yqN3ef7lPIAAAAA SUVORK5CYII=', town: ["Москва", "Воронеж", "Санкт-Петербург", "Новосибирск", "Екатеринбург", "Нижний Новгород", "Казань", "Челябинск", "Омск", "Самара", "Ростов-на-Дону", "Уфа", "Красноярск", "Пермь", "Волгоград", "Саратов", "Краснодар", "Тольятти", "Тюмень", "Ижевск", "Хабаровск", "Владивосток", "Оренбург", "Пенза"], people_name: { man: ["Сергей", "Леша", "Алексей", "Николай", "Александр", "Павел", "Паша", "Дима", "Дмитрий", "Женя", "Евгений", "Слава", "Святослав", "Андрей", "Антон", "Артем", "Геннадий", "Макс", "Максим", "Олег", "Виктор", "Роман", "Рома", "Денис", "Руслан", "Вадим", "Костя", "Влад", "Владислав", "Марат", "Юрий"], woman: ['Татьяна', 'Лиза', 'Алла', 'Наталья', 'Ксения', 'Оксана', 'Юлия', 'Ольга', 'Екатерина', 'Руслана', 'Любовь'] }, 'UA': { town: ["Киев", "Харьков", "Одесса", "Днепропетровск", "Донецк", "Запорожье", "Львов", "Кривой Рог", "Николаев", "Мариуполь", "Луганск", "Винница", "Макеевка", "Херсон", "Полтава", "Чернигов", "Черкассы", "Житомир", "Сумы", "Хмельницкий", "Черновцы", "Ровно", "Днепродзержинск", "Кировоград", "Ивано-Франковск", "Кременчуг", "Тернополь", "Луцк", "Белая Церковь", "Краматорск"], people_name: { woman: ['Татьяна', 'Лиза', 'Алла', 'Наталья', 'Ксения', 'Оксана', 'Юлия', 'Ольга', 'Екатерина', 'Руслана', 'Любовь'], man: ["Сергей", "Леша", "Алексей", "Николай", "Александр", "Павел", "Паша", "Дима", "Дмитрий", "Женя", "Евгений", "Слава", "Святослав", "Андрей", "Антон", "Артем", "Геннадий", "Макс", "Максим", "Олег", "Виктор", "Роман", "Рома", "Денис", "Руслан", "Вадим", "Костя", "Влад", "Владислав", "Марат", "Юрий"] }, img: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAcUlEQVR42u3aMQHAMADDs KAYf0KFUCC7UiDRYQK6nbZZLgAAAAAAAAAAAAAAjAMkp0sBAAAAAAAAAAAAAAAAAAAAAAAAALAO8N+vS wEAAAAAAAAAAAAAAAAAAAAAAAAAsA7gFAUAAAAAAAAAAAAAYKoHyOHoWIZhLHEAAAAASUVORK5CYII=' , cursePrice: '15 грн.' }, (код слегка урезал. Было еще куча регионов в таком же порядке) }; $(document).ready(function () { init(); $('.freezing-close').on('click', function (e) { e.preventDefault(); $('.freezing-wrap').addClass('freezing-hide'); }); }); var buyerCounter; var init = function () { var cnr = $('#country').val(); buyerCounter = 18; // var countryPrice = $('.dynamic-freezing-info--price'); if (cnr) $('span.dynamic-freezing-info--price').text(arr_buyer[cnr].cursePrice); else $('span.dynamic-freezing-info--price').text(arr_buyer['RU'].cursePrice); buyed(cnr); setTimeout(function () { $('.freezing-wrap').addClass('freezing-active'); }, 2000); }; var buyed = function (cnr) { var timeInterval = setTimeout(function tInterval() { var lengthTown = arr_buyer[cnr].town.length; if (typeof woman !== 'undefined' && woman == 1) { var id = 'woman'; $("span.freez_oformila").text('оформила'); } else { var id = 'man'; } var lengthName = arr_buyer[cnr].people_name[id].length; var buyerName = getRandomInt(0, lengthName - 1); var buyerTown = getRandomInt(0, lengthTown - 1); buyerCounter--; $('.freezing-buyer--name').text(arr_buyer[cnr].people_name[id][buyerName]); $('.freezing-buyer--town').text(arr_buyer[cnr].town[buyerTown]); //$('.freezing-buyer--flag').removeClass().addClass('new-flag'); $('.freezing-buyer--flag').attr('style', 'background: url(\'' + arr_buyer[cnr].img + '\'); background-size: cover; margin-top: -5px; margin-left: 5px;'); //$('.freezing-buyer--flag').removeClass().addClass("freezing-buyer--flag " + arr_buyer.cnr.class_flag[0]); $('.packages-count').text(buyerCounter); $('.freezing-buyer').addClass('freezing-buyer--show'); setTimeout(function () { $('.freezing-buyer').removeClass('freezing-buyer--show'); }, 5000); var randInterval = getRandomInt(12, 19); if (buyerCounter > 4) { timeInterval = setTimeout(tInterval, randInterval * 1000); } }, 8000); }; function getRandomInt(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } </script><div class="freezing-wrap"> <div class="freezing-info"> <div class="freezing-info--title">Мы заморозили цену!</div> <div class="freezing-info--price">1$ = <span class="dynamic-freezing-info--price"></span></div> <div class="freezing-info--packages">Осталось <span class="packages-count">18</span> штук <br>по старому курсу</div> <a href="dis/index.html#close" class="freezing-close"></a> </div> <div class="freezing-buyer"> <div class="freezing-buyer-prod-img"> <!-- <img src="product" alt=""> --> </div> <div class="freezing-buyer-info"> <div class="dynamic-info"> <span class="freezing-buyer--name"></span>, г. <span class="freezing-buyer--town"></span> <span class="freezing-buyer--flag"></span> </div> Только что <span class="freez_oformila">оформил</span> заказ. </div> </div> </div> Насколько я понимаю, этот скрипт как-то отслеживает местоположение пользователя и показывает ему, что его соотечественник сделал заказ. Как упростить этот скрипт, чтобы из списка name и town показывался рандомный заказчик?
0
|
04.08.2016, 17:04 | |
Ответы с готовыми решениями:
9
Нужен совет по Python скрипту для GL868 Telit Нужен совет Нужен совет Нужен совет |
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
|
|
04.08.2016, 17:10 | 2 |
Math.random говорит, что сообщения формируются случайно.
1
|
0 / 0 / 0
Регистрация: 04.08.2016
Сообщений: 4
|
|
04.08.2016, 17:17 [ТС] | 3 |
Но как-то же он может определять место жительства пользователя? Ни разу не отображался, к примеру, заказчик из Грузии или Казахстана (а они в полном коде есть, города и имена)
0
|
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
|
|
04.08.2016, 17:20 | 4 |
1
|
0 / 0 / 0
Регистрация: 04.08.2016
Сообщений: 4
|
|
04.08.2016, 17:26 [ТС] | 5 |
Хмм. Пытался упростить код только до региона RU, немного изменил его, вставил на свой сайт.
Результаты: 1 - никакой плавной анимации 2 - коряво отображается 3 - что уж там говорить о генераторе. остался только каркас " из г. совершил заказ" Как сделать? (js скоро с ума сведет )
0
|
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
|
||||||
04.08.2016, 17:35 | 6 | |||||
не зачем генерировать на клиенте даннй контент
так любой пользователь мало мальский разбирающийся как нажать Ctrl + U для просмотра исходного кода вас разоблачит иное дело делать подобное на сервере и уже отдавать сгенерированный контент пример php
0
|
0 / 0 / 0
Регистрация: 04.08.2016
Сообщений: 4
|
|
04.08.2016, 18:46 [ТС] | 7 |
Задумаюсь, мерси
0
|
Superposition
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
|
|
04.08.2016, 22:42 | 8 |
Просто обращается к сервису который извлекает геоданные. Например, есть вот такой https://www.maxmind.com/ru/home
API для него. Думаю что соотечественник берется из бд данного сервиса
0
|
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
|
|
04.08.2016, 23:00 | 9 |
Padimanskas,
код смотрел??? (Кликните здесь для просмотра всего текста -< первое сообщение)
нет шансов у твоих надежд
0
|
Superposition
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
|
|
05.08.2016, 00:25 | 10 |
0
|
05.08.2016, 00:25 | |
05.08.2016, 00:25 | |
Помогаю со студенческими работами здесь
10
Нужен совет Нужен совет. Совет нужен! Нужен совет Нужен совет. Нужен совет Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |