Перейти к содержанию

Таблица лидеров


Популярный контент

Показан контент с высокой репутацией 11/08/19 во всех областях

  1. 1 балл
    Мы уже все дружно, тебе проект собрали. Процент от доната будет?
  2. 1 балл
    Меня часто просят сделать на сайте гугл переводчик и в качестве примера ставят выбор языка "Как у Rampage". Выглядит он вот так: Я сразу же заметил ряд недостатков в скрипте рампейджа и вообще в методе который был взят за его основу, поэтому при первой же возможности занялся написанием своего решения. Прочитав документацию и покопавшись в сети, я увидел, что многие вопросы связанные с кастомизацией остаются без ответов, в лучшем случае предлагаются решения похожие на скрипт рампейджа, но более упрощенные. Так уж сложилось, что я как раз искал тему для моей первой статьи на habr.com и судя по всему с темой я не прогадал. Статью практически сразу опубликовали и я получил полноправный аккаунт. Эта тема будет полезна всем верстальщикам и фронтенд разработчикам форума поэтому я размещаю её здесь. Перед тем как преступить к написанию данной статьи, я решил посетить страницу где генерируется Google Translate Widget, чтобы узнать о возможных изменениях и увидел данное сообщение: Получить доступ к переводчику сайтов больше нельзя. Это никак не отразится на тех, кто уже установил соответствующий плагин. Советуем пользователям переводить веб-страницы с помощью браузеров, имеющих встроенную функцию перевода. Не сложно догадаться какой браузер имеет ввиду Google, но речь не об этом. Самое главное, что плагин все также остается рабочим и мы можем им пользоваться. Кроме того, за неимением возможности генерировать виджет, данная тема становиться еще более актуальной, ведь потребность в машинном переводе никуда не исчезла, а Google Translate, на мой взгляд, один из самых мощных инструментов для этого. Как будет выглядеть наш пример: Для корректной работы нашего кастомного виджета необходимо подключить файлы: <link rel="stylesheet" href="css/style.css"> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script> <script src="js/google-translate.js"></script> <script src="//translate.google.com/translate_a/element.js?cb=TranslateInit"></script> Содержимое style.css: body { margin: 0; padding: 0; } .page { display: flex; min-height: 100vh; } /* Фиксируем позицию body, которую меняет панель гугла*/ .page_fix { top: 0 !important; position: static !important; } /* Прячем панель гугла */ .skiptranslate { display: none !important; } /* language */ .language { position: fixed; left: 10px; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; } .language__img { margin: 2px; cursor: pointer; opacity: .5; } .language__img:hover, .language__img_active { opacity: 1; } /* content */ .content { text-align: center; margin: auto; } Используемые флаги: Разметка кастомного виджета: <div class="language"> <img src="images/lang/lang__ru.png" alt="ru" data-google-lang="ru" class="language__img"> <img src="images/lang/lang__en.png" alt="en" data-google-lang="en" class="language__img"> <img src="images/lang/lang__de.png" alt="de" data-google-lang="de" class="language__img"> <img src="images/lang/lang__fr.png" alt="fr" data-google-lang="fr" class="language__img"> <img src="images/lang/lang__pt.png" alt="pt" data-google-lang="pt" class="language__img"> </div> Содержимое google-translate.js: const googleTranslateConfig = { lang: "ru", }; function TranslateInit() { let code = TranslateGetCode(); // Находим флаг с выбранным языком для перевода и добавляем к нему активный класс $('[data-google-lang="' + code + '"]').addClass('language__img_active'); if (code == googleTranslateConfig.lang) { // Если язык по умолчанию, совпадает с языком на который переводим // То очищаем куки TranslateClearCookie(); } // Инициализируем виджет с языком по умолчанию new google.translate.TranslateElement({ pageLanguage: googleTranslateConfig.lang, }); // Вешаем событие клик на флаги $('[data-google-lang]').click(function () { TranslateSetCookie($(this).attr("data-google-lang")) // Перезагружаем страницу window.location.reload(); }); } function TranslateGetCode() { // Если куки нет, то передаем дефолтный язык let lang = ($.cookie('googtrans') != undefined && $.cookie('googtrans') != "null") ? $.cookie('googtrans') : googleTranslateConfig.lang; return lang.substr(-2); } function TranslateClearCookie() { $.cookie('googtrans', null); $.cookie("googtrans", null, { domain: "." + document.domain, }); } function TranslateSetCookie(code) { // Записываем куки /язык_который_переводим/язык_на_который_переводим $.cookie('googtrans', "/auto/" + code); $.cookie("googtrans", "/auto/" + code, { domain: "." + document.domain, }); } При смене языка добавляется куки с ключом googtrans и значением вида /ru/en /ru — это язык который переводим /en — это язык на который переводим Это стандартное поведение, поэтому я им и воспользовался для кастомизации виджета. Кликая по флажкам необходимых языков, из атрибута data-google-lang в куки записываются соответствующие значение вида /auto/выбранный_язык. Затем происходит перезагрузка и auto заменяется на язык записанный отдельно в конфиг: const googleTranslateConfig = { lang: "ru", }; Это сделано для того, чтобы мы не привязывались к одному языку. Если к примеру сайт переведен на 2 языка, русский и английски, то мы можем передать текущий язык в конфиг и правильно обработать его. Все доступные языки и их код стандарта ISO-639-1 можно найти тут. Функции добавления и очисти куки я вынес отдельно, чтобы была возможность провести дополнительные проверки и вызвать в других местах. Важный момент, куки необходимо менять для основного домена и всех поддоменов. Теперь, имея контроль над нашим виджетом, мы можем без проблем реализовывать более сложные дизайны: Репозиторий с проектом на GitHub Cсылка на оригинал статьи
  3. 1 балл
    Шаблонный Ивент Новый Год 2018 HTML\Scripts : @OrmJevil Дизайн: @B13oH NPC: @Cyxapuk Костюм Санты: @TryBat9 ShowAura: @Apocalypse Если Авторы не вы, дайте знать! Описание: У Деда Мороза украли носки с конфетами которые он собрал для детей Адена.Надо вернуть конфеты Деду Морозу и получить подарок. Плохие дети получают уголь (Нельзя выкинуть,продать итп, возможен только обмен у Внучки Деда Мороза 100 угля на одну Елку.1 Уголь дает +5000 к весу.) Дед Мороза делайте спаун по городам Внучка Деда мороза спаун в локации при ТП через Деда.Тут же можно сделать не большую фарм зону. Дроп Лист & Дабл Клик (ДК): Шанс Дропа: 60% кол-во 1 шт. Шанс ДК: 40% что выпадет уголь , шанс 60% что сладости кол-во 1\1 Шанс Дропа: 20% кол-во 1 шт. Шанс ДК: 30% что выпадет уголь , шанс 70% что сладости кол-во 2\2 Шанс Дропа: 10% кол-во 1 шт. Шанс ДК: 20% что выпадет уголь , шанс 80% что сладости кол-во 3\3 Шанс ДК: Конфеты 30% - 10шт. кольцо 5% баюм (50%) - 1шт. кольцо 5% Ант (50%) - 1шт. серьга 5% Антарас (50%) - 1шт. серьга 5% Закен (50%) - 1шт. подвеска 5% Валакас (50%) - 1шт. костюм санты 10% (скорость бега +80) - 1шт. Северный Снег 5% (Активный скилл Блесс СОЕ) - 1шт. печенье 10% (Скорость атаки и скорость каста +400 на 10 минут ) - 1шт. фанта виноград 10% (Мдеф\Пдеф +500 на 10 минут ) - 1шт. фанта апельсин 10% (Патк\Матк +500 на 10 минут ) - 1шт. Возможно скиллы будут работать не у всех тестил на PW! event HNY2018.rar
  4. 1 балл
    Я как старожила форума, и человек который имеет репутацию предлагаю вам услуги гаранта ваших сделок. Для чего требуется гарант? Вы решили совершить сделку с оборотом реальных денег и как здравомыслящий сомневаетесь в порядочности второго участника сделки? В таком случае я предлагаю свои услуги гаранта сделок. Согласитесь, что лучше заплатить на пару баксов больше, но быть уверенным в предстоящей сделке? Каким образом происходит сделка: Вы договариваетесь со вторым участником сделки и связываетесь со мной. Сообщаете мне: Сумму сделки, товар сделки, прочие подробности. Одна из сторон сделки передает гаранту товар, вторая пересылает деньги на электронный кошелек с учетом двойной комиссии. На данный момент размер двойной комиссии составляет 1.6% от общей суммы сделки. Я в роли гаранта отдаю каждой стороне, свое и каждый остается довольным. //Гарант не несет ответственности за дальнейшую судьбу товара после сделки, он лишь сводит к минимум риск "кидалова" в момент совершения сделки. Электронные валюты принимаются: WebMoney Qiwi (Киви) (VISA/MASTERCARD) Оплата с помощью Unitpay Оплата услуг Гаранта: Оплата гаранта (5%) от суммы сделки, минимальная сумма сделки 1000 рублей. Если сумма сделки меньше сделка будет фиксировано стоит 75 рублей. Мои условия: Имею право отказаться в любой момент от сделки, вернуть средства и удалить товар со своего пк. После окончания сделки я удаляю ваш товар со своего пк, и показываю через TeamViewer процесс сделки и удаления товара. Контакты: Telegram: https://t.me/istevedogs Skype - steve-dogs.ru
  5. 1 балл
    Dr web видит,проверил Касперским на ноуте не чего не заметил. Много проскакивает ошибок.Я не любитель сборок с допами,тут решил посмотреть. Первый раз столкнулся что сервер сожрал всю оперативу,хотя в начале 1.2гб берет,а потом начинает расти . Вот еще скрины может кому интересно : Вывод:Сложилось чувство напихано что можно было.Но все ровно спс.
  6. 1 балл
    обесни ? Ты мне лучше скажи где у тебя находится ХТМЛ-ка Амуниция Демона, потому что 99994 не канает. В ней изменил все копирайты, перезапустил серв и ничего не изменилось. Боже... Это еще пол беды, я еще интереснее нашел что то. Я должен же людей предупредить что конкретно и как, потому что сидят новички которые хотят скачать-поставить и наслаждатся. Ты так и пиши что выкладываешь сборку что бы можно было вытянуть вкусняшки... Хотя там все из шары, вы таскивать то нечего.
×
×
  • Создать...