Ответы пользователя по тегу JavaScript
  • Just validate Номер телефона?

    @mletov
    Если по-быстрому, то для tel задать minLength и maxLength
    Если по-нормальному, то гуглить "JustValidate + Regex"

    Вот, например, исходники

    https://github.com/horprogs/Just-validate/blob/mas...
    В них есть и правило для телефона, если не нравится, то можно свое написать

    this.REGEXP = {
                // eslint-disable-next-line max-len
                email: /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
                zip: /^\d{5}(-\d{4})?$/,
                phone: /^([0-9]( |-)?)?(\(?[0-9]{3}\)?|[0-9]{3})( |-)?([0-9]{3}( |-)?[0-9]{4}|[a-zA-Z0-9]{7})$/,
                password: /[^\w\d]*(([0-9]+.*[A-Za-z]+.*)|[A-Za-z]+.*([0-9]+.*))/,
                strengthPass: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]/,
            };


    UPDATE
    Там есть настраиваемые правила

    Rules
    required - Required field, not empty
    email - Check a valid email address
    minLength - Limit the minimum value
    maxLength - Limit the maximum value
    password - At least 1 letter and 1 digit
    zip - 4-5 digits
    phone - Format 111-222-3333
    remote - validate value via remote api
    strength - validate field for default or custom regexp
    function - provide your own validation function


    function
    Ответ написан
  • Нужна помощь с сайтом, а именно скрин странички на стороне сервера. Как это сделать?

    @mletov
    На стороне сервера - никак. Скрин все равно делается на клиенте, а потом уже отправляется на сервер, если нужно его куда-то сохранить.

    А на клиенте, например:
    https://www.geeksforgeeks.org/how-to-take-screensh...

    Ну или Google->"screenshot page javascript"
    Ответ написан
    2 комментария
  • Как правильно скрывать элементы?

    @mletov
    На самом деле, сделано довольно интересно.

    Через json на клиент прилетает в уже в зашифрованном виде, типа "up in the #oogie ;on, : sallo the team, pile on the green". При этом если открыть эту строчку инспектором и ввести, к примеру, 1111, то выведется на экран GGGG, т е дешифрация происходит прямо на лету.

    Глубже копнуть квалификации не хватило, но предполагаю, что делается примерно так:

    Реально показывается не та строчка, которую мы видим в инспекторе (если посмотреть стили, там height:1px и line-height:1px;), а на ее основе генерится какой-нибудь svg или canvas. Причем похоже, что изменения проверяются все время через какой-нибудь SetInIterval, раз даже данные, внесенные через инспектор, подхватываются и дешифруются.

    https://superuser.com/questions/609429/javascript-...
    Ответ написан
    Комментировать
  • Как сделать такую панораму?

    @mletov
    Соглашусь с profesor08
    Сами используем krpano. Писать с нуля смысла нет.
    Добавлю только, что снимать с коптера нужно не абы как, а по определенном алгоритму.
    Ответ написан
    5 комментариев
  • Что делает эта строка в JS?

    @mletov
    google: js + тернарный оператор
    Ответ написан
    Комментировать
  • Создание консультанта для сайта?

    @mletov
    Основная сложность создания такого чата в том, как уведомлять собеседника о новом сообщении.

    Собственно, есть 2 способа:

    1) Топорный и ленивый. Через SetInterval() отправлять к базе запросы через ajax и смотреть, не появилось ли в ней новых записей.

    2) Красивый и правильный. Я писал такой чат, но т к стек был ASP.NET, то использовал SignalR (дотнетовская обертка для WebSocket). Но раз вас стек другой, то почитайте про WebSocket и соответствующие библиотеки для работы с ним на сервере и на клиенте.
    https://bablofil.ru/nodejs-websocket-chat/
    Как написать чат на websocket'ax (javascript)?
    https://medv.io/create-chat-on-php/

    Все остальное довольно примитивно.
    Ответ написан
    Комментировать
  • Как на iphone не применять стили?

    @mletov
    Вынесите стили для IOS в отдельный файл.
    И проверяйте на сервере (что там у вас, PHP?), подключать этот файл или нет.
    Ответ написан
    Комментировать
  • Есть ли книги или статьи по jQueryUI?

    @mletov
    Навряд ли книги или статьи (хотя я сомневаюсь, что такие есть) расскажут вам больше, чем оф сайт https://jqueryui.com.
    Хоть он и на английском, большого значения это не имеет, т к читать там особо нечего.
    Достаточно демок с примерами кода.
    Ответ написан
    Комментировать
  • Где искать хороших JS-разработчиков? Тех, кто работает конкретно с JS, а не изредка использует?

    @mletov
    А где вы искали?
    Такое ощущение, что вы ищете через знакомых, знакомых знакомых, репостите вакансию в соцсетях или еще какими-то окольными путями.

    Почему бы не решить вопрос в лоб:
    1) Запостить вакансию на работных сайтах: hh.ru, superjob.ru, moikrug.ru/vacancies и пр ?
    2) Пробегитесь по профилям в МоемКруге, ВК и LinkedIn. Напишите в личку подходящим по профилю людям.
    3) Если уж совсем глухо, заплатите денег эйчар агентствам.

    Вообще странное дело, js на различном уровне знает достаточно народа, среди них должны быть и толковые.
    Вы ж не редкого профиля спеца ищете.
    Может денег мало предлагаете? Или этот quasar такая экзотика, что на нее никто размениваться не хочет, тогда платите выше рынка.
    Ответ написан
    Комментировать
  • Защита сайта от копирования в themeforest.Как защитить?

    @mletov
    Показывать только на своем сервере.
    Например, сделать так, чтобы куски верстки подтягивались с сервера через ajax, а на сервере ограничить адреса, с которых могут идти запросы.
    Весь css сливать в один файл, весь js - в другой, без разбивки на библиотеки.

    А еще мне как-то попал в руки html, сверстанный автоматом какой-то прогой, все классы назывались в духе div_1, div_2 и т д. Сверстано наглядно, но абсолютно неподдерживаемо. Возможно, есть что-нибудь для замены имен классов на бессмысленные.

    В общем, можно довести макет до состояния, чтобы было дешевле купить, чем поддерживать демку.
    Ответ написан
    1 комментарий
  • Почему сбрасываются cookie?

    @mletov
    Тестировали на разных компьютерах в разных браузерах?
    Локально и на хостинге поведение одинаковое?

    1) В браузере есть настройка "Уничтожать куки после выхода из браузера"

    2) Может быть, мало места на диске компа, с которого заходите

    3) Погуглите, какие есть настройки в .htaccess/php.ini, связанные с куками
    Возможно, что кроме
    php_value session.cookie_lifetime 1200
    php_value session.gc_maxlifetime 1200

    есть что-то еще
    У меня была такая проблема, делал несколько сайтов на одном коде, все работало, а потом перестали вешаться куки. Оказалось, хостер изменил дефолтное значение в php.ini каких-то из этих параметров php.net/manual/en/session.security.ini.php (сейчас уж не помню каких).
    Пройдитесь по ним. Если локально работает, а на внешнем не работает, то сравните локальную конфигурацию с внешней. Особенно вот эту настройку session.use_only_cookies гляньте

    4) Помню, у одного юзера все время крашились куки в разных браузерах. Помогла только замена компа.
    Ответ написан
    4 комментария
  • Какие данные сохранять в бд широты и долготы?

    @mletov
    Так возьмите несколько реальных адресов на пробу, введите в поиск по картам координаты из первого массива и из второго, сделайте выводы.
    Ответ написан
  • Почему на телефонах Samsung на Яндекс.Картах отрабатывает двойной клик, а не одинарный?

    @mletov Автор вопроса
    Решил вопрос. Обновил API Яндекс.Карт

    <script src="https://api-maps.yandex.ru/2.0/?load=package.full&lang=ru-RU" type="text/javascript"></script>


    на

    <script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>


    Девайсы, на которых я тестил, были под Android 5, а проблемные телефоны Samsung - на Android 6. Судя по всему, какая-то разница в браузере.
    Ответ написан
    Комментировать
  • ASP.NET Как передать массив из javascript в контроллер?

    @mletov
    1) На клиенте сериализуйте передаваемые данные в json

    2) Создайте в C# класс, аналогичный структуре элемента массива созданного json, например, SomeClass.

    3) Создайте действие в контроллере, получающее на вход лист такого класса
    public ActionResult MyAction(List<SomeClass> data)
    {
              ....
    }


    4) Передайте ajax'ом данные в это действие контроллера
    Рекомендую воспользоваться jquery/angular, а не заморачиваться с чистым js, смотря что у вас на клиенте используется.

    PS Не забудьте сверить метод передачи и метод, прописанный в Annotation действия (POST, GET, PUT, DELETE)

    PPS В вашем случае, возможно, все проще и можно на вход действия получать
    public ActionResult MyAction(string[] data)
    {
              ....
    }

    Зависит от того, какая структура массива. Что он содержит: числа, строки, объекты?
    Ответ написан
  • Куда податься после javascript?

    @mletov
    Вопрос больше по психологии, чем по IT. Вот приходит человек к психологу, спрашивает, как поступить в некоторой ситуации. Психолог задает различные вопросы, вытягивая информацию, и озвучивает варианты. Причем, по сути, это не те варианты, которые психолог придумал, а варианты, которые у пациента уже есть в голове, но которые он почему-то сам боялся/не умел для себя озвучить.

    Вам то самому что нравится? Нравится биг дата - подтяните матчасть, попробуйте пройти собеседование на эту позицию. Нравится что-то другое - то же самое. Тут уже хорошо ответили, что лучше вас никто не знает, куда лучше податься. А что касается денег, то их можно заработать везде, был бы специалист квалифицированный.
    Ответ написан
    Комментировать
  • Сколько браузеров оптимально использовать для тестирования сайтов?

    @mletov
    Десктоп:
    - Chrome
    - Firefox
    - IE10+ обязательно, более ранние версии - по ситуации, в зависимости от посещаемости и целевой аудитории
    - Opera (современная, а не та, которая Presto), Safari, Vivaldi, Яндекс.Браузер и прочий WebKit - тоже по ситуации. В 99% случаев все будет как в Chrome

    Ну и мобильные особняком идут
    Ответ написан
    Комментировать
  • Прикрутить js плагин на WordPress?

    @mletov
    Хм... сомневаюсь, что без знаний программирования такое возможно

    В общем виде:
    1) Создаете тип поста "Слайдер"
    www.wpbeginner.com/wp-tutorials/how-to-create-cust...

    2) Заводите в нем все необходимые поля

    3) Читаете документацию по API, как вывести посты определенного типа
    Ответ написан
    Комментировать
  • Есть ли что-то типа WYSIWYG фреймворка?

    @mletov
    Вы не с той стороны подходите.

    Например, в TinyMCE можно видимость каждой кнопки контролировать. Сделайте, скажем, bold, italic и underline и хватит с них))

    Задайте жесткие правила для области во внешней части сайта, которая управляется через WYSIWYG.
    CSS + !important все решат.

    Обрабатывайте код при записи в базу или при выводе из нее каким-нибудь парсером на сервере.

    А писать свой визуальный редактор... это разве что для саморазвития, практической пользы нет.
    Ответ написан
    Комментировать
  • Почему один и тот же код на разных серверах работает по разному?

    @mletov
    Что означает "работает по-разному"? Какое поведение ожидается? Какое реальное поведение на обоих серверах? Что показывает js консоль (не удивлюсь, если там error 404)? Без телепатии ничего не понятно

    Возможно, при переносе у вас сбились пути, но гадать - дело неблагодарное. Больше деталей нужно.
    Ответ написан
    2 комментария