Ответы пользователя по тегу JavaScript
  • В чем может быть проблема при отправки формы на почту?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Сервер отдает кривой ответ. Что конкретно - смотрите в ответе на запрос в инструментах разработчика - нетворк, смотрите тело ответа от сервера.
    Ответ написан
  • Как загружать другие изображения на мобильных устройствах в Slick Slider?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Пикча как раз и создана для адаптивности и максимальной экономии трафика и ресурсов.
    1 вариант - использовать media запросы для source: media="(max-width: 1200px)"
    2 вариант - srcset:
    <srcset="image-small.png 320w, image-medium.png 800w, image-large.png 1200w">


    читать про адаптивные изображения
    Ответ написан
    Комментировать
  • Как обрабатывать ошибки в РНР, в частности WebSocket соединения?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Возможно ли передать вместе с ошибкой (в виде элемента массива) и свой код/описание ошибки ?
    Конечно, для этого обычно используются исключения. Не везде, но во многих случаях они нормально работают. Другое дело что есть 2 нюанса:
    1) При ошибке вебсокет сервера никакую ошибку от собственно сервера вы не получите (он вам просто не ответил), но вы в любом случае получите статус ошибки, который не обязательно отдавать пользователю, а ориентируясь на номер ошибки отдать свое сообщение.
    2)
    но я хотел бы реализовать логирование ошибок
    Надеюсь вы понимаете что с клиентской стороны что-либо делать по этому поводу невозможно, а со стороны сервера и так есть лог ошибок, если это не ошибки логики, которые не ошибки системы, а скорее неверное поведение (типа "поле не заполнено" или "недопустимые символы"). Такие тоже можно логировать, но во первых - а смысл?, а во вторых все равно это реализовывать средствами пыха. И ошибок типа "сервер не доступен" конечно там не будет.

    2 Возможно ли как-то заставить Ajax не реагировать на ошибку и обрабатывать ветвь ": function (response) " ?
    да, точнее надо просто не обрабатывать результат в success. Смотри ниже.

    3 Имеется ли другой объединяющий обе ветви "success + error" параметр на выходе в котором я бы разместил анализ ответа ?
    complete
    Ответ написан
    Комментировать
  • Есть софт для создания макросов умеющий работать с выделенным текстом?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    hotkey master
    macro recorder
    Ответ написан
    Комментировать
  • Почему не работает onblur на textarea?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Что логично, так как этого элемента не существовало на момент когда вешалось событие. В онклик добавьте создание события онблур для только что созданного элемента. И наоборот )
    Ответ написан
  • Почему скрипт срабатывает только на одной картинке?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Подскажите, пожалуйста, что не так?
    У вас все работает правильно, только то что вы себе выдумали не соответствует тому как оно на самом деле работает. Похоже вы пытаетесь работать как в jquery, но в ванильном жс это работает по другому.

    Как работает сейчас (плохо): Вы выбираете 1(!) элемент с классом ApproachImg (читаем доку querySelector) и на него вешаете событие, ну и по событию тоже работаете с выбранными одиночными элементами. Естественно будет лажа.

    Как надо: Выбрать все элементы с классом ApproachImg (читаем доку querySelectorAll), проходимся форичем по всем выбранным элементам, вешаем слушатель события и в обработчике события используем querySelector() от текущего элемента вместо querySelector на весь документ, что избавляет нас от необходимости как-то привязывать внутренние элементы к наружным.
    Ответ написан
    Комментировать
  • Как переместить папку с подпапками и содержимым внутри?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    пипец, сегодня прям каждый вопрос - тупо просьба погуглить за него....
    https://www.google.com/search?q=node+js+move+directory
    Ответ написан
    Комментировать
  • Как отрисовать элемент на странице?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Обычно это делается на стороне сервера. Яваскрипт для этого не нужен.
    Ответ написан
  • Как изменять содержимое страницы взависимости от того сколько раз на нее перешли?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Комментировать
  • Как привязать программу к компьютеру?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Логично что если вы не можете привязать что-то к железу пользователя, есть смысл привязать свое железо к машине пользователя. Если это коммерческое решение - лучший вариант для защиты - физический ключ - донгл. Это ебатория и гемор для клиента, удорожание для вас (ну или для клиента тоже), но дает четкую связку с железом, как вы и хотели. То есть одновременно работать сможет лишь один компьютер с 1 донглом.
    Ответ написан
  • Как добавить GET запрос в URL при запросе AJAX?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    что бы при нажатии еще добавлялся get параметр но не знаю как это сделать ведь запрос идет без перезагрузки страницы.
    History.pushState()
    Ответ написан
    Комментировать
  • Jquery - в чем проблема с формой обратной связи?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    но почему-то после отправки данных из формы, страница формы перезагружается с прикрепленными в url данными из формы формируя пустую страницу и больше ничего не происходит.

    по тому что:
    $(document).ready(function () {
      $('[submit]').on('click', function (e) { //на кнопку вешается обработчик(плохо, нужно на субмит формы)
        e.preventDefault(); // останавливаем субмит с кнопки
        $(this).parent('form').submit(); // находим собсно форму и субмитим ее (непонятно зачем тогда было останавливать субмит), данные уходят на сервер методом гет
      }) // все что дальше тупо не выполняется, так что можно забить
    Ответ написан
  • Как обосновать выбор стека технологий?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    У меня чистый JS и PHP с фреймворком Laravel.
    Во первых - неизвестно сколько кода и какой функционал у вас в проекте. Естественно инструмент выбирают под задачу, а не наоборот.

    Если у вас на фронтенде нет огромного функционала по манипулированию ДОМ, это не СПА и нет смысла тянуть еще 10 библиотек ради 200 строчек кода - чистый жс лучший выбор. Плюсы - хорошо поддерживается, любой специалист среднего уровня может поддерживать, нет необходимости в дополнительных библиотеках, которые ведут к дополнительной зависимости от чужой кодовой базы, нет необходимости следить за последними изменениями в чужой библиотеке, не тянутся лишние файлы.

    На бэкенде - ларавел неплохо покрывает 90% типовых задач "искаропки", широкий выбор достаточно качественных модулей на любой чих, хорошее покрытие тестами, обширное комьюнити и качественная документация. Качество кода однозначно будет выше по сравнению с начинающим кодером, если использовать уже кем-то написанный и многократно протестированный код. Кроме того - имеет кодестайл, приучает к (относительно) качественному подходу в разработке...

    Что из этого применимо в вашем случае - хз, так как это больше общие слова, хотя и хорошо отражающие действительность.
    Ответ написан
    4 комментария
  • Как сделать проверку input на обязательный ввод двух слов?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Типа так:
    let val = "Michał Wazovsky";
    const regex = /^[\p{L}]+ [\p{L}]+/gu;
    const found = val.match(regex);
    console.log(found); //["Michał Wazovsky"]
    Ответ написан
    Комментировать
  • Можно ли сделать скрипт для скачивания файлов zip с сайта, затем извлечь оттуда файлы excel, и объединенить в одну таблицу excel?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Можно ли сделать скрипт для скачивания файлов zip с сайта, затем извлечь оттуда файлы excel, и объединенить в одну таблицу excel?
    Можно.

    На сайте есть раздел с отчетами реализации товаров (от маркетплейса) в формате «zip»
    https://www.google.com/search?q=python+download+fi...
    https://docs.python.org/3.9/library/zipfile.html#m...

    Необходимо объединить все 71 файлов формата «excel» в один общий файл и 1 таблицу «excel» с добавлением столбцов
    https://www.google.com/search?q=python+excel+library
    Ответ написан
    9 комментариев
  • В чем я допустил ошибку в json?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Открывайте инструменты разработчика, нетворк, и смотрите что возвращает ваш аяксовый запрос, скорее всего там у вас какой-то варнинг вылазит, или еррор.

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

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    отслеживать mouseup + keyup и проверять window.getSelection(), после чего document.getSelection().removeAllRanges();

    Но смысла в этом имхо никакого...
    Ответ написан
  • Сервер возвращает ответ на фронт в виде значений, как изменить стили в зависимости от этих значений?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Этих значений на фронте нет, их присылает только бэк.
    У вас может не быть ТЕКУЩЕГО состояния, но список всех состояний на фронте должен быть, иначе как вы будете знать как должен выглядеть определенный статус?

    Ну или более "извращенный" и имхо не совсем верный вариант - передавать с бэкенда кроме статуса еще и свойства, например класс, который нужно присвоить элементу с данными, или просто цвет для подсветки... Но все равно - на фронте должен быть как минимум создан этот класс, да и вообще такая фигня нарушает разделение данных и отображения. Условно если завтра у вас фронтенд поменяется, то вы будете вынуждены переносить классы из старого отображения. Не то чтобы это было прям большой проблемой, но стоит избегать такого поведения.
    Ответ написан
    1 комментарий
  • Как передать массив в JS Autocomplete из PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
  • Перестали сохраняться записи. Выдает ошибку. Куда посмотреть?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Порождаются эти запросы скриптом api.fetch.min.js
    ну так открыть его, и посмотреть где там урл формируется, либо запросы через аякс тянет, либо ифреймы... тупо поиск по файлу "http:" .

    UPD: после чашечки кофе решил поправиться, так как скорее всего проблема не в этом. Вариантов 2:

    1) Разовый глюк, 301 редирект висит в кеше, решение - обновить страницу со сбросом кеша. Проще всего проверить работу сайта из инкогнито, если работает - то это кэш.
    2) Где-то происходит принудительный редирект, и выяснять надо по месту - расставлять брекпоинты и вардампы, или искать в коде редиректы, короче смотреть в какой точке такая лажа происходит, судя по всему похоже на кривой код плагина.
    Ответ написан