Ответы пользователя по тегу JavaScript
  • Как создание лепестковую диаграмму (radar chart)?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Вы же понимаете, что рисуете на canvas? Выйти за неё нельзя. Значит нужно ограничить отрисовку сетки до заданного максимума, а не до фактического, который будет использоваться для расчёта масштаба
    Ответ написан
  • Как отправить HTTP на локальный сервер?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Сейчас я Вас научу плохому :)
    В html есть тег FORM
    https://www.w3schools.com/html/html_form_elements.asp

    Форме можно присвоить id и указать display:none
    Отправить ее можно вызвав submit

    Минус броузер уходит на новую страницу. Указав target=_blank - получим новую вкладку.
    Можно объявить окно и подсунуть его имя в таргет - будет посимпотней.

    Элементаршину кончили. Теперь аякс (без перезагрузки и ухода со страницы)
    https://api.jquery.com/jQuery.post/
    берем супер пушку jQuery и пробуем сперва это делать через готовую либу.

    Теперь про fetch
    https://stackoverflow.com/questions/33439030/how-t...
    по ссылке разжевывается
    $content = trim(file_get_contents("php://input"));
    главное тут, что явоскрипт не кодирует данные в привычном для пыха виде ($_POST,$_FILES) пустые и нужно самому их декодить из потока
    Ответ написан
    4 комментария
  • Как избежать загрузки video пока оно не требуется?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988

    Есть js скрипт добавления нескольких video тегов

    который работает неправильно , значит вместо него надо написать работающий правильно.
    Или прочитать / разобраться в существующем как он устроен и переписать под себя.

    А не добавлять костыли снаружи.

    Логика всех скриптов Lazy Load основана на том, что сперва есть плейсхолдер, который заменяется на реальный контент при входе объекта в область видимости.
    Ответ написан
    Комментировать
  • Как в Google открыть от 50 до 100 вкладок с разными url-адресами?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://learn.microsoft.com/en-us/windows-server/a...
    У команды сортировки есть ключ включать в выходной файл только уникальные результаты.
    https://learn.microsoft.com/en-us/windows-server/a...
    команду for можно натравить на полученный в первом шаге файл
    Ответ написан
    Комментировать
  • Можно ли по получить div id вышестоящего блока в рамках одной collumn и вставить его в значение?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Батенька, вы уже дозрели до перехода от статичного html к его динамической генерации.
    Можно по классике возложить эту задачу на бакенд, а можно динамически собирать html из javascript.

    Но в обоих подходах потребуется понять, что вам не нужно кучу разных однотипных переменных.
    Да и сам подход стоит поменять.
    например кнопки оключить/подключить интернет.
    <button class="...  mySwithInet .... "  data-status="on/off"  data-device="alisa-1">Отключить интернет</button>

    по псевдоКлассу mySeitchInet навешивается слушатель нажатия. Аргументы(data-) можно получить так
    https://developer.mozilla.org/ru/docs/Learn/HTML/H...

    можно использовать parentElement, чтобы id устройства не писать кучу раз
    https://www.w3schools.com/jsref/prop_node_parentel...

    когда вы повесили слушателя, то внутри функции this будет указывать на нажатый элемент. И все остальное ищете через него.
    Ответ написан
    3 комментария
  • Автоматическое продление даты на сайте как сделать?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://stackoverflow.com/questions/4156434/javasc...

    Надеюсь далее сами поймете как поправить , чтобы считал начало следующей
    Ответ написан
    Комментировать
  • Как скрыть Api ключи в react?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Извините, но ваша ситуация выглядит странно.
    Во первых, Вы взяли апи для отправки сообщений, которое позиционируется как не требующее серверной части :
    "Послать письмо из явоскрипта".
    Во вторых публичный ключ, который вы хотите скрыть - это аналог подменного номера телефона на досках объявлений. Типа написать письмо можно и ваш реальный емайл не светиться.

    В вашем случае "ключи доступа к сторонним сервисам никогда не передаются на сторону клиента" не принимимо.
    Это получается "масло масленное" .
    Ответ написан
  • Как предотвратить имитацию запросов?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    не удачный пример с платежными системами.
    Данные об оплате поступают от мерчанта.
    В 99% процентов случаев Ваш сайт просто отправляет посетителя на сайт платежной системы так как пройти сертификацию для работы с данными карт (Payment Card Industry Data Security Standard (PCI DSS) ) большой гиморой.
    Для переадресации требуется сумма платежа, идентификатор участника платежной системы в чью пользу оплата, обычно к обязательным полям добавляют возможность добавить идентификатор оплаты со стороны продавца.
    Названия полей и их количество немного отличаются от платежной системе к системе.

    Есть вторая схема. Предварительная регистрация платежа (бакенд дергает апи и получает ид оплаты). Редиректит пользователя на оплату конкретного счета.

    Факт успешной оплаты может проверяться по инициативе со стороны бека, так и через механизм обратных вызовов (хуков)

    От пользователя сайт не берет информацию. Возврат по урлу успеха на сайт максимум можно использовать только для перепроверки, что поступлении денег было.

    Даже в этом случае (пользователь ничего не передает) верить не желательно.
    Стоит перепроверить контрольную сумму. Ограничить доступ к хукам по ip.

    Типовой способ защиты: расчет контрольной суммы от
    секретнаястрока+поле_данных1+поледанных2+....+полеN

    Но способ не подходит для JS так как строка будет видна :(
    Ответ написан
    Комментировать
  • Как отправить данные через websoket из php?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    сходи на packagist и выбери себе либу.
    В свое время я взял hoa/websocket, но сейчас проект заброшен.
    В любом случае можешь из этих примеров найти вдохновение
    Ответ написан
    Комментировать
  • Как разместить и обновлять свой js-скрипт на гитхаб через PHP?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Следующие подводные камни вашего решения.
    1) Броузер кеширует статику на своей стороне.
    Поэтому изменения текста js скрипта пользователи могут узнать через год. Не шутка. Просто пользователь может получить файл через прокси с жестким кешированием. Читайте про хеадеры кеширования html
    https://developer.mozilla.org/ru/docs/Web/HTTP/Caching
    https://habr.com/ru/articles/204464/

    2) Правильная публикация статики на github.io (Гит Пейджес)
    https://docs.github.com/en/pages/getting-started-w...
    Если кратко, то после пуша в репу должен отработать коректно хук

    3) Ну и остается из php запускать shell команду, которая будут пушить новый сгенерированный скрипт.
    >git push

    Предварительно сделать на серверу репу в месте куда пых сможет писать

    з.ы. имхо гимороя больше чем просто взять VPS рублей за 200-600 в месяц
    Ответ написан
    5 комментариев
  • Как лучше обратиться к кнопке через id или через class?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    id вещь уникальная. А через класс можно сделать однотипные действия.
    Так что в зависимости от задачи.
    Ответ написан
    Комментировать
  • Почему в консоли вылетатет ошибка unexpected character at line 1 column 1 of the JSON data, когда поля формы не заполнены?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    С чем это связано?
    С грязным стилем написания кода.

    661c33f25f339728912163.png

    Если задавить вывод ошибок, то код начнет работать.
    !!!! НО !!!!!
    661c35352405c300063421.png
    Как быстро вы отловите ошибку с тем, что подчеркнуто красным ?
    Ответ написан
  • Как сделать карусель категорий типа Ютуба?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Ловить onClick на плашках. Делать
    ajax + динамическое формирование дом дерева галереи.
    вешать нужные обработчики на новые элементы.
    Написать бакенд: к которому обращаться.
    Ответ написан
  • Почему перестала работать проверка состояния интернета на ПК?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Я начал бы с проверки #internetConnection в коде страницы присутвует
    Не уверен, что ранее это работало.
    https://caniuse.com/?search=online

    "online" does not always mean connection to the internet, it can also just mean connection to some network.

    если точно работало, то попробывать найти старую версию броузера. Могли сломать.

    Движок вебкита тоже не боги пишут. Сломанную печать более полугода в десктопной версии чинили. А потом на теже вилы наступили в андроид версии
    Ответ написан
    1 комментарий
  • Делаю сайт, программа правильная, но выдает ошибку, в чем проблема?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Если "правильный" код работает "неправильно", то он вызывается в "неправильное время".
    Вот для начала https://habr.com/ru/companies/yandex/articles/718084/

    От себя скажу упрощенно.
    Страница это обычно куча подключаемых файлов. Броузер дотягивает их в 5 потоков.
    У вас может все нормально работать при первой загрузке страницы, а при возврате падать в ошибку.
    Тут проявляется работа кеша. Код из выше подключенного скрипта успевал отработать пока грузился следующий.

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

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Создать свою мини-библиотеку на чистом js?
    посмотри ответ. Как красиво в одну строчку.
    А в вашем варианте мне не нравиться составное имя функции doc_select
    Ответ написан
    Комментировать
  • Как создать скрытый input для передачи технической информации на другую страницу?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    ничему из того, что приходит со стороны клиента верить нельзя.
    Куки, http заголовки и все-все можно отправить на сервер со стороны клиента.
    Из простейшего что вам подойдет - session.
    Ответ написан
    Комментировать
  • Лучший язык для разработки веб-приложений на Andorid&IOS?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Что будет выведено на QR коде ?
    Ссылка на скачивание приложения ?
    Оно будет для каждого кафе отдельное (брендованое) ?
    Как будет реализована авторизация / регистрация ?
    Как будет осуществлено взаимодействие с учетной системой кафе ?

    Люди пишут полноценные системы годами. И та часть которую Вы хотите реализовать там малюсенькая подзадачка.
    Ответ написан
    Комментировать
  • Как редактировать чужой сайт?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    "отредактировать чужой сайт" можно только для самого себя.
    В броузерах существует понятие расширения.
    https://habr.com/ru/articles/703330/

    Вам придется разобраться как именно задается задержка на исходном сайте и понять какие изменения нужно внести. Если правку можно сделать чисто средствами js, то можно воспользоваться например
    готовым инструментом (воспользуйтесь поиском по магазину расширений для хрома)
    Ответ написан
    Комментировать
  • Разрыв соединения websocket при отключении подсветки экрана?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    я так понимаю питон на сервере у провайдера. явоскрипт в хроме на телефоне у пользователя.
    Верно ?
    А ответ почему не работает связан с особенностями поведения мобильных телефонов.
    Во главе угла стоит экономия батарейки. Поэтому при отсутвии активности пользователя все фризиться.

    https://caniuse.com/?search=Screen%20Wake%20Lock%20API
    запретить гасить экран так себе вариант.

    https://habr.com/ru/articles/321924/
    Можете в офлайн посылать пуши (нотифи)
    Ответ написан
    Комментировать