Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Что такое киберугрозы нулевого дня и как с ними бороться
Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
HistoryART

Владимир

Надзиратель
  • 112
    вклад
  • 258
    вопросов
  • 307
    ответов
  • 26%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Какие есть живые и универсальные (IE, Edge) полифиллы для работы CSS-переменных?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Sass, Less, ванильным css-ом не обойдётесь.
    Ответ написан 01 апр. 2020
    1 комментарий
    Нравится 1 комментарий
  • Как выглядит реализация мобильной версии сайта?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Так вы можете адаптивную версию чуть-чуть переписать (медиа запросы выполнять от 360 до * пикселей) и выгрузить эту версия на под-домен, зачем тратить время и ресурсы на отдельную версию?
    Ответ написан 01 апр. 2020
    1 комментарий
    Нравится 1 1 комментарий
  • Как для современных браузеров выводить анимацию, а для старых картинку?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    в js есть методы для проверки браузеров, погуглите
    Ответ написан 01 апр. 2020
    2 комментария
    Нравится 2 комментария
  • Как реагировать на нажатие стрелок клавиатуры?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Ничего сложного, скорее всего у него либо язык русский включён, либо капслок, всё решается фильтрами и приведением в нижний регистр.
    Ответ написан 31 мар. 2020
    6 комментариев
    Нравится 6 комментариев
  • Как обрабатывать слова написанные разным способом?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Да, думаю вполне, а в идеале установить правила для написания подобного - либо кратко, либо полностью
    Ответ написан 30 мар. 2020
    Комментировать
    Нравится 1 Комментировать
  • Можно ли как то упростить стили для рамки?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    1. Занести все ссылки в переменные
    2. Перестать играть с позиционированием и выровнять всё с помощью flex-box / margin
    Ответ написан 29 мар. 2020
    1 комментарий
    Нравится 1 комментарий
  • Как заставить элементы двух столбиков в FLEX контейнере “растечься” по высоте большего столбика?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    align-items: center;
    Ответ написан 29 мар. 2020
    Комментировать
    Нравится 1 Комментировать
  • Как можно подвинуть стрелку, чтобы она была по середине?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    flex-box:
    align-items: center;
    Ответ написан 29 мар. 2020
    Комментировать
    Нравится Комментировать
  • Не отображается картинка?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Вы позиционируете .reviews__img как absolute, картинка позиционируется от ближайшего relative элемента, установите родителю position: relative (именно родителю картинки, первому родителю, это важно) и всё будет работать как задумано.
    Ответ написан 28 мар. 2020
    Комментировать
    Нравится Комментировать
  • Как открыть событие по добавленному элементу?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Ваш подход к задаче не правильный, ознакомьтесь с .map() и с forEach

    click
    Ответ написан 28 мар. 2020
    3 комментария
    Нравится 3 комментария
  • Как изменить элемент в нужную дату и время?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Храните этот setTimeout в localStorage или на сервере, точнее дату, проверяйте при каждом входе текущую с установленной и обрабатывайте.
    Ответ написан 27 мар. 2020
    Комментировать
    Нравится Комментировать
  • Как ограничить цикл по неверным попыткам?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Создайте переменную вне, прибавляйте единичку при не верном ответе и проверяйте, мол если больше / равно 3, выходим из цикла, выводим луз.

    click
    Ответ написан 27 мар. 2020
    8 комментариев
    Нравится 8 комментариев
  • Где почитать статью где бы описывалась правила "красивой" верстке?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Здесь
    Ответ написан 26 мар. 2020
    11 комментариев
    Нравится 11 комментариев
  • Как в приложении обращаться к API написанном на express.js?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Кидайте с клиента запрос:

    async function sendAndGetData(data) {
    
           let response = await fetch('/', {
                method: 'POST',
                headers: {
                    'Content-Type': 'application/json'
                },
                body: JSON.stringify({
                    data: data
                })
            });
    
            response = await response.json;
    
            console.log(`${response.id} / ${response.data}`);
    
    }


    А на сервере обрабатывайте:

    let counter = 0;
    
    app.post('/', (req,res) => {
    
    counter += 1;
    
    res.send({
    
       id: counter,
       data: `Client data: ${req.body.data} / Query id: ${counter}`
    
    })
    
    })
    Ответ написан 26 мар. 2020
    Комментировать
    Нравится Комментировать
  • Как правильно работать с двумя массивами одновременно?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Как сказал Дмитрий Беляев, ваш код с ошибками, для перебора с назначением обработчика нужен следующий код:

    document.querySelectorAll(".app__item").map(item => {
        item.onclick = function() {
            document.querySelectorAll(".equalizer").map(children => {
                  children.style.display = 'block';
            });
        }
    });
    Ответ написан 23 мар. 2020
    Комментировать
    Нравится Комментировать
  • Как показать текст, не вместившийся в блок?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    .text {
      word-wrap: break-word;
    }
    Ответ написан 22 мар. 2020
    Комментировать
    Нравится Комментировать
  • Как спарсить данные подгружаемые js после загрузки страницы?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Ждите загрузку страницы, она считается загруженной после отработки всех скриптов.
    Ответ написан 21 мар. 2020
    10 комментариев
    Нравится 10 комментариев
  • Как сверстать данный блок?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    svg рисуйте формы, остальное как обычно
    Ответ написан 20 мар. 2020
    Комментировать
    Нравится Комментировать
  • Как отобразить ссылку обьявления при парсинге Авито?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    Переходите на puppeteer, чирио баганый, много проблем с ним было. В pappeteer это будет выглядеть как в обычном js: el.src/href/id/class
    Ответ написан 20 мар. 2020
    4 комментария
    Нравится 4 комментария
  • Как настроить обновление последних записей через определенное время?

    HistoryART
    Владимир @HistoryART
    Надзиратель
    setTimeout(() => {
    await connect();
    
        const user = await client.getUserByUsername({ username: 'username' });
        const posts = user.edge_owner_to_timeline_media.edges;
        const latestPosts = posts.slice(0, 4);
    
        const latestPostsShortcodes = latestPosts.map(post => post.node.shortcode);
    
        let foundPosts = await InstagramPost.find({ shortcode: latestPostsShortcodes }) as any;
        let foundCodes = foundPosts.map(post => post.shortcode);
    
        const codesToFetch = latestPostsShortcodes.filter(code => {
            return !foundCodes.includes(code);
        });
    
        if (codesToFetch) {
            let media = await getInstagramPosts(codesToFetch);
            media.forEach(post => {
                foundPosts.push({
                    text: post['edge_media_to_caption']['edges'][0]['node']['text'],
                    href: `https://instagram.com/p/${post['shortcode']}`,
                    shortcode: post['shortcode'],
                    img: post['display_url']
                });
            });
        }
    
        savePostsToDb(foundPosts);
    
        res.send({ media: foundPosts });
    }, 1000 * 60 * 60)
    Ответ написан 20 мар. 2020
    10 комментариев
    Нравится 10 комментариев
Оценили как «Нравится»
  • ← Предыдущие
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • Следующие →
Самые активные сегодня
  • sergey-gornostaev
    Сергей Горностаев
    • 8 ответов
    • 0 вопросов
  • tyllo
    tyllo
    • 7 ответов
    • 0 вопросов
  • ky0
    ky0
    • 7 ответов
    • 0 вопросов
  • CityCat4
    CityCat4
    • 7 ответов
    • 0 вопросов
  • wppanda5
    WP Panda
    • 7 ответов
    • 0 вопросов
  • Sanes
    Sanes
    • 6 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации