Задать вопрос
  • CSS Как правильно прописать стили для текста?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    В SVG перевести, тогда градиент можно любой тексту придать.
    Ответ написан
    3 комментария
  • Как правильно верстать на чистом html css?

    zorro76
    @zorro76
    Плохой тон нынче это без фреймворков, препроцессоров.
    Ответ написан
    1 комментарий
  • Как сделать переключение вкладок на нативном js?

    DIITHiTech
    @DIITHiTech
    Fullstack javascript developer
    Такой код нежизнеспособен, ибо хотя бы нет повторного использования кода и Вы будете повторять сами себя, это неизбежно... это если не касаться самого "компонента" ибо это только заготовка.
    Абстракцию все ровно придется писать, придется писать минимальный базис для работы с DOM.
    Тут у здешних две крайности на эту тему:
    1) JQuery везде, JQuery всегда, JQuery любит папа, мама и я... (с) =)
    2) Vanilla JS - так давайте же все напишем без абстракций, ядра , библиотек... чем больше сдадим-тем лучше
    Писать на "чистом" не освобождает от необходимости грамотно строить код, придерживаться ООП, модульности, юзания библиотек и любых методик позволяющих не повторяться. Да, это приведет к появлению собственных библиотечных функций, возможно микрофеймворка, если не взяли готовый перед этим, но так и должно же быть....
    Ответ написан
    Комментировать
  • Как сделать переключение вкладок на нативном js?

    Тоже нужно писать цикл для всех элементов в коллекции?

    Ага.

    Ну потом вам это может надоесть, тогда вы оформите все в виде функции (а то и объектами разбрасываться начнете) и потихоньку у вас это будет выливаться в очередную jQuery-подобную библиотеку.
    Ответ написан
    3 комментария
  • Как запустить setInterval снова при обнулении его через clearTimeout?

    @Camaro67
    Помог? - жми "Отметить решением"
    1. setInterval нужно останавливать с помощью clearInterval, а не clearTimeout.
    2. В setInterval/setTimeout нужно передавать функцию, а не код.
    function auto_play() {
    	var act = $('.controlNav > li.act');
    	act.next().trigger('click');
    }
    
    var autoPlay = setInterval( auto_play, 4000 );
    
    slider.hover(function(){
    	clearInterval(autoPlay);
    }, function(){
    	autoPlay = setInterval( auto_play, 4000 );
    });
    Ответ написан
    1 комментарий
  • Как узнать загрузилась ли картинка для просмотра в галерее?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    $('.spinner').show();
    
    $('img').on(
        'load',
        function() {
            $('.spinner').hide();
        }
    ).each(function (index, img) {
        if (img.complete)
        {
            $('.spinner').hide();
        }
    });


    Или вот за что я люблю CoffeeScript :)
    $('.spinner').show()
    $('img').on('load', -> $('.spinner').hide())
        .each((index, img) -> $('.spinner').hide() if img.complete)
    Ответ написан
    4 комментария
  • Насколько весомым является влияние знания регулярных выражений на трудоустройство PHP developer?

    Denormalization
    @Denormalization
    junior:
    /(.*)/
    middle:
    /[^a-c]+([y-z]+?)/
    senior:
    (?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*:(?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)(?:,\s*(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*))*)?;\s*)
    Ответ написан
    5 комментариев
  • Сильно ли влияет производительность компьютера на скорость загрузки сайта?

    @inkvizitor68sl
    Linux-сисадмин с 8 летним стажем.
    Да, достаточно сильно.
    Возьмите Atom первых поколений, да попробуйте загрузить на нём любой сайт со сложным javascript-ом - увидите разницу (у меня выходило в 3 раза (в сравнении с athlon XP 3400+) на простеньком сайте с jquery).

    CSS сейчас тоже бывает дорого применять.
    Ответ написан
    Комментировать
  • Сильно ли влияет производительность компьютера на скорость загрузки сайта?

    @LiguidCool
    Есть скажем так минимальный порог, после которого скорость загрузки отходит на второй план, а производительность на первый.
    Проблема в том, что с каждым годом веб становится все более прожорливым. Страницы обвешивают кучей рюшей, препроцессров, шаблонизаторов итп. Тогда да, вся обработка ложится на ваш ПК. Но это сворее проблема (ИМХО) криворуких программистов. У меня например сейчас несколько окон хрома жрут почти гиг оперативы. Помнится пару лет назад 1-2 гига на компах были вполне неплохим объемом оперативы.
    Для мобильных устройств актуальна как раз скорость и стабильность канала передачи. Как правило под мобильные сайты хоть как-то стараются оптимизировать, а вот с каналом ничего не поделаешь.
    Думаю основная проблема тут в том, что рынок разработки дешевеет, нужно клепать больше сайтов за меньшее время. Нет времени писать качественно и оптимально. Фреймворки рулят.
    Ответ написан
    Комментировать
  • Сильно ли влияет производительность компьютера на скорость загрузки сайта?

    Jump
    @Jump
    Системный администратор со стажем.
    Сильно ли влияет производительность компьютера на скорость загрузки сайта?
    Разумеется влияет, и очень сильно. Какие могут быть противоречия?

    Скорость загрузки складывается из трех составляющих -
    • Скорость отдачи сервером
    • Скорость передачи по каналам связи.
    • Скорость обработки браузером и вывода на экран.

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

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

    MhMadHamster
    @MhMadHamster
    codepen.io/anon/pen/EjGOgO
    через skew
    Ответ написан
    Комментировать
  • Как вставить многострочный html через нативынй js?

    BuriK666
    @BuriK666
    Компьютерный псих
    Можно так.
    el.innerHTML += '....';
    но при этом будут пересозданы все имеющиеся элементы внутри el
    лучше
    function appendEl(parent, tag, html) {
      var el = document.createElement(tag);
      el.innerHTML = html;
      parent.appendChild(el);
    }
    appendEl(el, 'h4', inputTaskName.value);
    appendEl(el, 'div', taskPerformer.value);
    Ответ написан
    Комментировать
  • Почему функция mail не отправлеяет на GOOGLE и MAIL.RU сообщения?

    SilenceOfWinter
    @SilenceOfWinter Куратор тега PHP
    та еще зажигалка...
    Отправляет,но скорее всего они в спам уходят из-за контента или недостаточного кол-ва заголовков
    Ответ написан
    7 комментариев
  • Как выполнить функцию при скролле колесом мыши только 1 раз?

    Sanasol
    @Sanasol Куратор тега JavaScript
    нельзя просто так взять и загуглить ошибку
    var scrolled = false;

    scrolled = true;

    if(!scrolled)
    Ответ написан
    1 комментарий
  • Где грань авторского права в верстке?

    @AndreyMyagkov
    Вы что серьезно думаете, что даже если и нарушаете, то за 10 бачей вас вздернут?
    Нарушения нет, ибо в этой гомнотеме на гомнобутстрапе нет никакой ценности - это не новая технология, не научные изыскания, не музыка, не фото, это просто самый обыденный код, который делается за 3 часа.
    Ответ написан
    Комментировать
  • Какие книги есть где можно осуществить свои мечты в строение свое движка?

    Arris
    @Arris
    Сапиенсы учатся, играя.
    Написать свою CMS просто. Берешь и пишешь. А потом переписываешь. А потом еще раз. До просветления.
    Ответ написан
    Комментировать
  • Как заставить jQuery custom content scroller работать с textarea?

    nazarpc
    @nazarpc
    Open Source enthusiast
    Потому что он не предназначен для этого, textarea это готовый компонент, встроенный в браузер, он отличается от простого <div>
    Могу посоветовать вместо <textarea> использовать <div contenteditable="true">, так будет работать.
    Ответ написан
    2 комментария
  • Как уменьшить кол-во ajax запросов?

    nonlux
    @nonlux
    Frontend
    1. Временный Кеш.
    При первом наведении на g.
    - Делаете запрос один раз.
    - Результат сохраняете в переменную (массив, объект).
    - Выводите подсказку
    При следующем наведении на g
    - Достаете данные
    - Выводите подсказку

    Профит 1 запрос на каждый g.

    2. Постоянный кеш.
    В этом случае часть данных можно сохранить в local storage.
    Например для постоянных пользователей можно сохранить редко изменяемые данные.

    3. Инклудим в приложение
    Часть данных можно отдавать сразу в приложение с загрузкой страницы.

    4. Объединение запросов
    Можно объедить все квартиры в коллекцию и отдавать одним ajax запросом.

    Backend
    Кеш никто не отменял.
    Необязательно на каждый плевок пользователя делать запрос к базе.
    Ответ написан
    1 комментарий
  • Как уменьшить кол-во ajax запросов?

    Feaxer
    @Feaxer
    Программист-фрилансер
    он маузовер {
    если апартментс_дата[id] существует, то информацию взять из апарментс_дата[id]
    иначе { аякс запрос на получение информации; сохранение полученной информацией в массив апартментс_дата с ключем id }
    }
    Ответ написан
    Комментировать