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

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

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

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

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

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

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

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

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

v3shin

Веб-шаман
  • 120
    вклад
  • 16
    вопросов
  • 172
    ответа
  • 54%
    решений
Лайки
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как записать такую логику на Js/Jquery?

    TNPTSYWWCC
    Uneasy Hearts Weigh the Most @TNPTSYWWCC
    And I Told Them I Invented Times New Roman
    Планирование: setTimeout и setInterval
    Движение мыши: mouseover/out, mouseenter/leave
    Введение в браузерные события
    Ответ написан 16 апр.
    Комментировать
    Нравится 1 Комментировать
  • Как просуммировать элементы массива, расположенные до нуля?

    0xD34F
    0xD34F @0xD34F Куратор тега JavaScript
    arr.reduceRight((acc, n) => n && acc + n, 0)
    Ответ написан 15 апр.
    1 комментарий
    Нравится 6 1 комментарий
  • Как сделать пользовательскую структуру данных в JavaScipt?

    sergiks
    Сергей Соколов @sergiks Куратор тега JavaScript
    ♬♬
    Деструктурировать-непередеструктурировать:
    const makeUser = ({name, age, lang, skills}) => ({name, age, lang, skills});
    
    const user = makeUser(getInfo());
    
    /* {
      "name": "John",
      "age": "20",
      "lang": "en",
      "skills": ["js", "html", "css"]
    } */
    Ответ написан 14 апр.
    1 комментарий
    Нравится 3 1 комментарий
  • Как анимировать логотип при скролле?

    apoca1ipsis @apoca1ipsis
    Криво конечно, но смысл вот таков https://jsfiddle.net/
    Ответ написан 12 апр.
    2 комментария
    Нравится 3 2 комментария
  • Как скрыть комментарии заблокированного пользователя во ВКонтакте?

    Дмитрий @dimoff66
    Кратко о себе: Я есть
    1) Устанавливаете в chrome расширение
    https://chrome.google.com/webstore/detail/user-jav...
    Оно позволяет писать скрипты для страницы

    2) Пишете для vk.com примерно такой скрипт
    const blocked = `
    Иван Говнов
    Еще ненавистный юзер
    И еще один нехороший человек
    `
    const filter = new Set(blocked.split('\n').filter(Boolean))
    
    setInterval(() => {
      const authSpan = [...document.querySelectorAll('.author')]
        .filter(v => filter.has(v.textContent))
      authSpan.forEach(el => 
        el.parentElement.parentElement.parentElement.style.display = 'none')
      }, 3000)


    И все, с частотой в 3 секунды скрипт будет мониторить комментарии на открытой странице и скрывать сообщения ненавистных персонажей.
    Ответ написан 31 мар.
    6 комментариев
    Нравится 4 6 комментариев
  • Как происходит всплытие переменной?

    sergiks
    Сергей Соколов @sergiks Куратор тега JavaScript
    ♬♬
    Внутри функции наверх выплывает только объявление локальной переменной var foo;

    var foo = 1; // можно стереть
    function bar() { 
        var foo; // всплыло сюда. Этот foo – иной, чем верхний foo!
        if (!foo) { // тут foo undefined,  !foo === true
            foo = 10; // выполняется, назначается 10
        } 
        console.log(foo); // вывели 10
    } 
    bar(); //--> 10
    Ответ написан 25 мар.
    11 комментариев
    Нравится 2 11 комментариев
  • Как писать стили на многостраничных сайтах?

    DanArst
    Danny Arty @DanArst
    Э, Ойboy!
    Если у вас есть дизайн сайта, то в чем проблема?
    Если этот CSS файл всего один, боюсь, что верстая 16 страниц я могу по ошибке задавать html элементам одинаковые классы, переопределять их стили и всё будет сбиваться

    Основные элементы, такие как шапка сайта, заголовки страниц, подзаголовки, элементы-обертки, кнопки, формы и тд скорее всего будут иметь один стиль (если нет, то тут уже вопросы к дизайнеру), так что это уже не проблема.

    А остальным элементам задавайте классы так, чтобы они отображали содержимое. Например есть страница Акции, в которой соответственно расположены блоки с акциями, каждый из которых включает в себя название и описание.
    Так вот классы, например по БЭМ, будут условно выглядеть так:
    <div class="sales"> 
        <h3 class="subtitle">Акции</h3> <!-- Подзаголовок-->
        <ul class="sales__list">
          <li class="sales__item">
            <h4 class="sales__title">Заголовок акции</h4>
            <p class="sales__text">Описание акции</p>
          </li>
          <li class="sales__item">
            <h4 class="sales__title">Заголовок следующей акции</h4>
            <p class="sales__text">Описание следующей акции</p>
          </li>
        </ul>
    </div>


    ЗЫ: На вкус и цвет, как говорится, фломастеры разные. Это всего лишь пример.
    Ответ написан 25 мар.
    Комментировать
    Нравится 2 Комментировать
  • Насколько практично использовать такой метод?

    Get-Web
    Виталий @Get-Web Куратор тега CSS
    Front-End Developer
    Не очень удачное решение..
    Во-первых анимация не бесконечна, во-вторых это явно повлияет на производительность.

    Изучите этот пример, возможно он вам поможет найти более подходящее решение
    Ответ написан 23 мар.
    2 комментария
    Нравится 3 2 комментария
  • Какие есть способы динамическое построения интерфейса, DOM?

    Rsa97
    Rsa97 @Rsa97
    Для правильного вопроса надо знать половину ответа
    Vue.js / React / Angular
    Ответ написан 23 мар.
    6 комментариев
    Нравится 2 6 комментариев
  • Как добавить цвет при наведении?

    DanArst
    Danny Arty @DanArst
    Э, Ойboy!
    Можно же решить просто средствами CSS:
    .cart-servise:hover i {
    color: #fff;
    }


    Решение на jquery
    Ответ написан 23 мар.
    4 комментария
    Нравится 2 4 комментария
  • Написать код на js связанный с определением квартала?

    sergiks
    Сергей Соколов @sergiks Куратор тега JavaScript
    ♬♬
    const getQuarter = () => Math.ceil((new Date()).getMonth() / 3);
    Месяцы в JavaScript от 0 (январь) до 11 (декабрь).

    Брать месяц, делить на 3, округлять вверх.
    0, 1, 2 дадут 1
    3, 4, 5 — 2
    9, 10, 11 — 4
    Ответ написан 22 мар.
    1 комментарий
    Нравится 2 1 комментарий
  • Как найти IPV4- / IPV6-адреса?

    sotvm
    SOTVM @sotvm
    Умный поймёт , а дураку и так всё равно.
    а загуглить?
    уже фсё давно придумано
    и для номеров телефонов и для IP адресов и для доменов и т.д
    зы
    я вам подскажу
    6058243fe6cb9035896394.gif
    "regex+IP" ну и дальше по списку
    Ответ написан 22 мар.
    Комментировать
    Нравится 1 Комментировать
  • Как найти в строке заглавные буквы и обернуть их в span?

    webdisigner
    webdisigner @webdisigner
    'Обувь и Цветы'.replace(/[А-ЯЁ]/g, '<span>$&</span>')
    Ответ написан 19 мар.
    1 комментарий
    Нравится 1 1 комментарий
  • Как найти все элементы getElementById?

    Василий Банников @vabka
    Токсичный
    getElementById (неожиданно) находит элемент по его id.
    В документе не может быть несколько элементов с одним id.
    Так что таким кодом вы и так находите единственный элемент с id=line

    Возможно, вам нужно что-то типа getElementsByClassName, getElementsByName, getElementsByTagName или querySelectorAll
    Ответ написан 18 мар.
    Комментировать
    Нравится 6 Комментировать
  • Кто знает как делать такие анимации?

    Олег @lolzqq
    HTML,CSS,JS,PHP
    Простые без затей на css

    Сложные уже на three.js
    Ответ написан 18 мар.
    4 комментария
    Нравится 6 4 комментария
  • Как переписать функцию с js на php?

    Rsa97
    Rsa97 @Rsa97
    Для правильного вопроса надо знать половину ответа
    Разная разрядность чисел при выполнении битовых операций.
    JS: 612538604 << 23 === 1979711488
    PHP: 612538604 << 23 === 5138346233823232
    Лечится принудительным ограничением разрядности:
    $cZ = $cZ ^ (($cZ << 23) & 0xFFFFFFFF);
    Ответ написан 16 мар.
    3 комментария
    Нравится 4 3 комментария
  • Проверка диапазона?

    Compolomus
    Дмитрий @Compolomus Куратор тега PHP
    Комполом-быдлокодер
    https://www.php.net/manual/ru/function.ip2long.php
    https://www.php.net/manual/ru/function.range.php
    https://www.php.net/manual/ru/function.in-array.php

    $range = [
        'from' => ip2long('194.125.224.0'),
        'to' => ip2long('194.125.227.255')
    ];
    
    $ip = ip2long('194.125.225.124');
    
    echo ($ip >= $range['from'] && $ip <= $range['to']) ? 'yes' : 'no';
    Ответ написан 16 мар.
    9 комментариев
    Нравится 2 9 комментариев
  • Какие и в каком порядке произойдут операции?

    Rsa97
    Rsa97 @Rsa97
    Для правильного вопроса надо знать половину ответа
    А при чём тут некие "принципы работы операторов"? Вычисления всегда выполняются согласно приоритета операций.
    P.S.
    Приоритет операций влияет на построение дерева. В данном случае оно будет такое:
    oufdwfg3sv38vy7ekajctwlraye.png
    После построения начинается вычисление. Для этого используется обход дерева в глубину.
    1. Попадаем в узел ||
    2. Вычисляем первый аргумент, попадаем в узел <
    3. Вычисляем первый аргумент, попадаем в лист 0, возвращаем значение.
    4. Вычисляем второй аргумент, попадаем в лист 14, возвращаем значение.
    5. Вычисляем 0 < 14, получаем true, возвращаем значение.
    6. Значение первого аргумента true, применяем short-circuit evaluation, игнорируем второй аргумент, возвращаем true.
    Ответ написан 11 мар.
    12 комментариев
    Нравится 5 12 комментариев
  • Как получить значение до ввода?

    sergiks
    Сергей Соколов @sergiks Куратор тега JavaScript
    ♬♬
    Атрибут можно и программно убрать, если вы не рулите разметкой:
    $('input').removeAttr('maxlength');

    По событию input, которое у вас уже обрабатывается, забирайте значение и удаляйте лишнее: пробелы, скобки, "+7" в начале. Если и после этого длина больше 10, ну, отрежьте какие-то цифры в начале или в конце, по вкусу )
    Ответ написан 09 мар.
    Комментировать
    Нравится 1 Комментировать
  • Почему self так работает?

    vesper-bot
    Максим Гришин @vesper-bot
    Любитель файрволлов
    Да, константы, как и любое другое поле, принадлежащее классу, будет доступно из класса-потомка, если оно в классе не было объявлено как private. Если бы вы в Test2 переопределили "TEST" - получили бы переопределенное значение. https://www.php.net/manual/ru/language.oop5.late-s...
    Ответ написан 09 мар.
    Комментировать
    Нравится 1 Комментировать
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • Следующие →
Самые активные сегодня
  • Rsa97
    Rsa97
    • 9 ответов
    • 0 вопросов
  • DevMan
    DevMan
    • 8 ответов
    • 0 вопросов
  • rPman
    • 7 ответов
    • 0 вопросов
  • Kozack
    Alex
    • 7 ответов
    • 0 вопросов
  • BormotunJedy
    Elena Fire
    • 7 ответов
    • 0 вопросов
  • part_os
    • 6 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

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

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