Ответы пользователя по тегу JavaScript
  • Почему скрипт отлавливает клик по всей странице?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    document.addEventListener('click',как раз и вешает слушатель клика на ВЕСЬ документ. И по коду, надо давать класс эктив ЛЮБОМУ элементу, который кликнут (event.target.classList.add('active');).
    Ответ написан
    3 комментария
  • Как достать картинку из видео файла при помощи js или php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    ffmpeg
    Ответ написан
    Комментировать
  • Как вывести определённое количество сообщений, а не все и какие параметры требуются добавить для управления функцией?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Очевидно что нужно задать лимит вывода, а по уму не использовать глобальные переменные, а передавать итерируемый массив. Но это если какая-то хотя бы архитектура, в вашем случае лимит добавьте.
    function showThemes(limit=3) {
    ...
       for (let i = 0; i < thread.messages.length; i++) {
          if($i==limit)return;
    ...
    Ответ написан
    Комментировать
  • Как создать и загрузить файл в JavaScript?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Я хочу загрузить на сайт через input файл
    Что за файл?
    после этого он должен обработаться js
    Что именно обрабатывается?
    и передать переменную в python код.
    Какую переменную, только что вроде о файле говорили?
    В python он кодирует фай.
    Кто такой "он"? И от чего он его кодирует?
    После этого я хочу добавить, полученный файл на сайт с возможностью скачивания.
    Так что за файл такой волшебный?
    Какими способами я могу это сделать?
    Писать много кода. Так работают все программисты. План отличный, можете приступать.

    На самом деле у вас здесь 5 или 6 отдельных вопросов, каждый из которых во первых хреново описан, а во вторых требует отдельного развернутого ответа. Решайте по кускам, сначала первую задачу, потом вторую и так далее. Все вместе никто и никогда не решает.
    Ответ написан
    2 комментария
  • Почему не могу обратится к DOM?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    626bada58d130385883113.jpeg
    Ответ написан
    Комментировать
  • Почему не получается вычислить высоту этих элементов?

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

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    let будет неглобальной, используйте var
    var indexNum;

    UPD: Я понял, вы конечно тупите, но я наконец понял как вы тупите, ща попробую объяснить для одаренных:
    let indexNum; // нужно получить сюда индекс (тольуо нужно var, а не let)
    // вот тут будет немного сложно, включаем мозг...
        box.forEach((item, index) => { //мы делаем цикл, и набрасываем слушатели(!)
          item.addEventListener('click', () => { //которые могут вообще никогда не случиться, или случиться через час
            indexNum = index; //и ТОЛЬКО ТОГДА в indexNum что-то появится, на текущий момент мы только объяснили 
    //что делать по клику, пока это только команда сделать что-то в случае чего-то, indexNum до тех пор пустой
          });
        });
    // тут indexNum все еще пустой, так как мы не умеем кликать на объекты быстрее чем исполняется код.
    
        mainWrapper.addEventListener('click', () => {
          console.log(indexNum); // выведет предыдущее значение индекса при первом клике
    // но помним, что клика еще нет!
        });
    // и тут клика еще нет
        for (let index = 0; index < 3; index++) {
          console.log(indexNum); // но здесь undefined, а именно здесь индекс и нужен
    // не "но", а здесь клика еще нет, а вы пытаетесь получить его значение.
    //код выполнился, теперь можете кликать, но теперь ваш фор уже вызываться не будет.
        }

    Теперь что надо сделать: Вынести ваш код в функцию, и функцию вызывать внутри евента.
    Ответ написан
    3 комментария
  • Не отображается Яндекс карта?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Скорее всего так:
    // Создаем карту.
      var myMap = new ymaps.Map...
    
    // Создаем еще одну карту.
      var myMap2 = new ymaps.Map...
    Ответ написан
  • Почему сбрасываются изменения в textContent HTML-разметки после обновления страницы? Как этим управлять?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Как сделать, чтобы то, что я ввел в textarea сохранялось в разметке страницы
    Куки, локалсторэйдж. По сути вы не можете изменить саму страницу через код, так как жс не умеет локально писать на диск без спроса (секюрити, и все вот это). При изменении странички через жс меняется только ее копия в оперативной памяти, сам исходный документ остается неизменным. Но для локального хранения придумали защищенные хранилища данных, котрые хранят текстовое представление каких-то данных (куки и локалсторэйдж).

    навсегда, пока целенаправленно не будет изменено повторно?
    Есть ограничения, во первых на длину данных, во вторых - срок жизни и принудительная очистка куки. Так что "навсегда" звучит слишком монументально, но думаю вам подойдет и просто на длительный срок )
    Ответ написан
    3 комментария
  • Почему не работает запрос через jQuery?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Взято с доки fetch, то есть просто прочесть 1 страницу документации, и не надо "перелопатив десятки тредов"...
    fetch('https://nominex.io/api/rest/v1/pairs',{
       headers: {
          'Accept':'*/*'
        }
      }
    )
      .then((response) => {
        return response.json();
      })
      .then((data) => {
        console.log(data);
      });
    Ответ написан
    Комментировать
  • Как отобразить нужное местоположение при обновление страницы в яндекс картах?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Awake, вопрос: Нахрена хранить это в стораже, если все равно лазеете на сервер при каждом чихе. Храните в сессии, или в бд, на сервер отсылайте только прибавить/убавить/удалить. Обратно получайте хтмл корзины, ну или жсон структуру и из нее уже хтмл лепите.

    Если очень хочется хранить в стораже - храните жсон строку под индексом товара, в котором уже цена, количество, от вашего кода нифига не изменится, кроме пары строк.
    будет у вас структура типа
    {
       "1":{
          "id":1,
          "qty":2,
          "price":666
       },
       "2":{
          "id":2,
          "qty":1,
          "price":77
       }
    }
    Ответ написан
    1 комментарий
  • Оптимальное решение для наложения большого количества текста со стилями на изображения?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    yarovikov,
    Да и текст поверх картинки верстать лютый гемор с адаптивностью. Там несколько столбцов текста, не считая остального
    Так не делайте адаптивно, тупо на А4 верстайте. Если вы думаете что расположить правильно на картинке текст сильно проще чем в придуманной специально для этого разметке - вы сильно ошибаетесь. А если юзер хочет скачать картинку - сделайте кнопку скачать, и отдавайте скрин через html2canvas, или более продвинуто - печать - сохранить в пдф, вообще красота, все векторное, не искажается, можно печатать в любом высоком разрешении....
    Ответ написан
  • Как заставить работать код 2 и более раза?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    И мне нужно чтобы после выполнения кода стили просто убирались но монета оставалась на том же месте (звучит как то не понятно но я не знаю как обеснить)
    Если стили убрать, логично что монета на том же месте не останется.

    просто я даже не знаю как обеснить не то что решить
    Это нормально, не хорошо, но нормально. Это навык который надо тренировать, и на пустом месте он не возникает. Некоторым не дается вообще, случай редкий, но бывает... Чаще всего, для постигших искусство составления правильного вопроса, ответ почти всегда очевиден.

    Во первых - сейчас второе использование кода работает не так? или не работает? Во вторых - что мешает ему работать как надо?
    Ответ написан
    6 комментариев
  • Как перенести рассчеты из excel в js?

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

    Объем слишком большой, чтобы переписывать все руками.
    Тогда не переносите...

    Волшебных конверторов нема.

    Посоветуйте, пожалуйста, в какую сторону смотреть?
    Фриланс?
    Ответ написан
    Комментировать
  • Как мне изменить значения инпута?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    1) задать паузу в проверке, так как вы набираете 1 и тут же срабатывает условие минимум, набираете 0 и у вас в инпуте уже 1000 (100 от первого условия и еще 0 от вас) и тут же фигачится 300.

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

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    не очень понимаю ваши страдания на пустом месте. Вы же сами привели ссылку где ваш вопрос решен в одну строчку, что еще вам нужно то?

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

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    По тому что невнимательность
    formButton.onclick = (e) =>{
        e.preventDefault();
        let value = formButton.value; // у буттона нет валуе, очевидно здесь должно быть formInput
        getResponse(value);
    }
    Ответ написан
    Комментировать
  • Есть ли у rutube актуальное js api?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    https://github.com/rutube/RutubePlayerJSAPI , насколько актуальное - хз. Вообще гугл - классная вещь, рекомендую...
    Ответ написан
    2 комментария
  • На какой технологии или плагине работает подгрузка блока контента на сайте?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Подскажите примеры плагинов
    Для чего плагины то? Для фотошопа?

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

    Есть задача ускорить загрузку страницы, разделив страницу на блоки, который будут подгружаться в определённой последовательности.
    Это не всегда ведет к увеличению скорости загрузки, и бОльшая часть таких сайтов имеет иные цели и более веские причины для этого, то есть это не сильвер буллет, а осознанный выбор под определенную задачу, где скорость отрисовки не самый важный показатель. Возможно в вашем случае достаточно будет подключить лэзи лоад, и оптимизировать другие параметры загрузки, вместо не совсем подходящего вам функционала (например, вполне понятно что текст хтмл содержимого занимает в байтах в стони раз меньше чем изображения, и логично что легче и эффективнее откладывать только загрузку картинок, а не кусков хтмля).
    Ответ написан
    Комментировать