Задать вопрос
  • Откуда сами собой взялись лишние строки в .htaccess?

    borisdenis
    @borisdenis
    Ленив и вреден...
    Да, это cpanel, если есть там параметр AutoSSL то отключите его.
    Ответ написан
    Комментировать
  • Как перенять объектно-ориентированное мышление?

    tzlom
    @tzlom
    Очень просто.
    Для начала - признайтесь себе что процедурное программирование у вас тоже страдает (иначе бы у вас не было этого вопроса), это не страшно, но с этим тоже надо что-то решать.
    Берёте любой свой процедурный проект (лучше маленький чтобы не застрять в рутине).
    Шаг первый - всё есть функция, поэтому весь код вне функций кладёте в функции, итого у вас получается что вне функций идёт только вызов main() (или как вы её назовёте)
    Второй шаг - функции работают только с тем, что в них передали. Удаляете глобальные переменные.
    Появляется проблема глубокой вложености, т.е. у вас внутри вызова А вызывается Б а в ней В которая хочет переменную из области видимости А, и таких случаев много. Тащить в Б все эти переменные - грустно и печально, поэтому делаем хитрость, каждая функция первым аргументом получает массив неких значений. Правило одно - функции не меняют имена и количество переменных в массиве, только значения.
    Третий шаг - функции должны быть короткими, выносите повторяющийся код в отдельные функции, если в функции используется много переменных - это повод разбить её на несколько меньших.
    Четвёртый шаг - вы уже пишете на ООП. Если 3 шага правильно сделаны, то осталось только оформить это дело согласно новым правилам - первый аргумент-массив это члены класса, соответственно функции использующие одинаковый массив - методы этого класса, прийдётся разобраться с доступом к полям и отдельными зависимостями, но это уже будет просто и понятно когда ты до этого доберёшься.
    Ответ написан
    4 комментария
  • Как одной функцией добавить элемент в DOM и получить ссылку на его объект?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    var div = $('<div />', {
    	'id': 'item',
      'class': 'item',
      'text': 'Текст'
    }).appendTo('body');
    
    console.log(div);
    Ответ написан
    2 комментария
  • Как сделаны эти сайты?

    Rou1997
    @Rou1997
    Нужна библиотека для создания видео из изображений, например ffmpeg, ее можно "прикрутить" к любому серверному языку, например PHP, а вообще-то, если обратился заказчик и деньги платит вам а не пополам со мной, то и спрашивать надо не у меня, а у вас!
    Ответ написан
    Комментировать
  • Как отследить момент остановки курсора?

    abyrkov
    @abyrkov
    JavaScripter
    setTimeout + clearTimeout при нужном эвенте не катят?
    var time;
    function onmousemove(e) {
      if(time) clearTimeout(time);
      ...
      time = setTimeout(onstop, 100);
    }
    function onstop() {
      // Cursor stopped
    }
    Ответ написан
    7 комментариев
  • Как в jQuery проверить на наличие свойства у всех элементов?

    ggdev
    @ggdev
    $('[data-status]').each(function(){
        if ($(this).data('status') === 'on') {
            alert('Status ON');
        }
    });
    Ответ написан
    Комментировать
  • Чем плоха Джумла?

    politon
    @politon
    HTML5,CSS3,JS,PHP,SQL,API,canvas,animation...
    В принципе скулят рукожопы, знания которых ограничены установкой готовых расширений. Способных подгонять ТЗ под возможности скудных знаний, а не подогнать готовый функционал под ТЗ.
    Очень мало кто способен собрать проект не из коробки CMS, а с framework. 99% понятия не имееет, что это https://framework.joomla.org/
    Ответ написан
    1 комментарий
  • Где найти человека способного быстро и качественно научить основам JS за деньги?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Чувак, идешь сначала сюда https://learn.javascript.ru/
    Пока Илья с товарищами по команде тебе надоедают, учишь английский.
    Потом переключаешься на бритоголового https://egghead.io/
    Потом, если покажется мало, начнешь курить спеки. К этому времени уже освоишь гугл и сможешь сам их найти.

    Лучшие практики SPA

    1. KISS - использовать только то, что действительно нужно. Например вам не нужен Javascript, если нужно просто сделать выпадающее меню. Достаточно просто CSS. Тоже самое применяется и к JS, вам не нужен Angular, если есть просто форма обратной связи. Такая задача решается на vanillajs.
    2. Использование фреймворков, например bootstrap, foundation и т.д. Обычно из них берется типография и сетки. Иногда формы. Я обычно беру bootstrap-stylus и собираю из него.
    3. Critical rendering path - минимальный набор CSS, который требуется для отображения первого экрана страницы, который потом будет встроен внутрь html-файла. Пример.
    4. Применение систем сборки, например gulp. Основной смысл заключается в том, что сначала вы дробите SPA на множество мелких компонентов/модулей/блоков. Затем унифицируете их. В итоге получается набор небольших файлов. Затем из этого набора собирается два больших файла (css, js) и они прогоняются через оптимизатор и минификатор.
    5. Использование CDN. CDN позволяет ускорить загрузку для часто-посещаемых и популярных страниц за счет уменьшения времени доставки контента. Особенно актуально для SPA, поскольку они представляют собой статический контент, который можно кэшировать без последствий.
    Системы сборки

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

    Модули AMD, CJS, UMD

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

    Сборка и подключение css

    Здесь и так ясно, что нужно сначала освоить сборщики. postcss - это когда обычный css скармливается фильтру, который разбирает его, добавляет префиксы к свойствам, оптимизирует наименования цветов и т.д. Убирает дублирующие свойства.

    В целом очень толково про оптимизацию расписано здесь https://developers.google.com/web/?hl=ru
    Ответ написан
    4 комментария
  • Адаптивные кнопки bootstrap?

    @NoMoney
    @media (max-width: 767px) {
            /*xs*/
            .btn {
                padding: 1px 5px;
                font-size: 12px;
                line-height: 1.5;
                border-radius: 3px;
            }
        }
        @media (min-width: 768px) and (max-width: 991px) {
            /*sm*/
            .btn {
                padding: 5px 10px;
                font-size: 12px;
                line-height: 1.5;
                border-radius: 3px;
            }
        }
        @media (min-width: 992px) and (max-width: 1199px) {
            /*md*/
            .btn {
                padding: 6px 12px;
                font-size: 14px;
                line-height: 1.42857143;
                border-radius: 4px;
            }
        }
        @media (min-width: 1200px) {
            /*lg*/
            .btn {
                padding: 10px 16px;
                font-size: 18px;
                line-height: 1.3333333;
                border-radius: 6px;
            }
        }
    Ответ написан
    Комментировать
  • Есть ли возможность платить за phpStorm меньше?

    Rou1997
    @Rou1997
    Есть весьма нехитрый вариант не выходить из тени, в нее разумнее уходить глубже, а не выходить из нее.
    Ответ написан
    Комментировать
  • Как убрать возможность растягивать скобку для текста?

    theWaR_13
    @theWaR_13
    Вы гуглить совсем разучились что ли? Ну простейшие же вещи спрашиваете..
    Ответ написан
    Комментировать
  • Нужна ли библиотека jQuery для front-end?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    Конечно же стоит. jQuery очень сильно облегчает работу с DOM, c событиями. jQuery дает кроссбраузерность из коробки.

    А по поводу анимации. Анимации сейчас делаются на CSS. Так что ни JS, ни jQ тут больше не удел. Гуглите Animate.css.

    Вообще, полезно почитать аргументы против: https://habrahabr.ru/post/259223/
    Это позволит прочистить мозги и не использовать jQuery где попало.
    Ответ написан
    4 комментария
  • Какие проекты должны быть у начинающего фронтенда, чтобы его с руками и ногами взяли на любую работу?

    MyaFF
    @MyaFF
    Верстальщик
    Чтобы верстальщика взяли на работу (обычную, не любую), ему можно проектов не иметь вообще, а просто хорошо выполнить тестовое задание, правда еще ему стоило бы быть скромнее - вот это Front-End Developer (все с большой буквы, это важно) - вот ни к чему оно.
    Если честно, вот если б ты завтра пришел к нам в студию устраиваться и сказал: "я знаю вот это хорошо, вот это планирую узнать в ближайшее время, а вот этому научите, я сам не понял / научусь в процессе" - я бы сказала "ну, давайте попробуем на испытательный", и мой голос бы учли при принятии решения.
    Если б ты пришел вот с этим agnaman-shamansky.com/ и прям такой с порога "я Front-End Developer, берите меня с руками и ногами", я бы сказала "нах" и мой голос был бы последним.

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

    abyrkov
    @abyrkov
    JavaScripter
    jQuery в помощь. На чистом CSS нельзя, да и непрактично
    Ответ написан
    4 комментария
  • Верстка. Как сделать увеличение блока товара в магазине так, что бы остальные элементы оставались на своих местах?

    ksider
    @ksider
    Я сварщик не настоящий
    можно немного усложнить код

    codepen.io/ksider/pen/yeKRMQ
    Ответ написан
    Комментировать
  • Вопрос на засыпку: почему offsetTop иногда равен undefined?

    В первом случае вы пытаетесь считать свойство offsetTop у jquery коллеккции, которого не существует. Во втором же все верно, ибо по индексу [0] там обычный DOM элемент, у которого это свойство есть. Для работы с jQuery коллекциями следует использовать метод offset().
    Ответ написан
    Комментировать
  • Как восстановить админку MODX REVO?

    @housequake
    проблема так же может быть в том, что забывают прописать путь в файле /connectors/config.core.php
    Ответ написан
    Комментировать
  • Где вы берете полезные наработки для сайтов?

    chelovekmuravei
    @chelovekmuravei
    \(-_-)/ раз два три четыре
    Первым делом велосипед. Это плохо, но весело. Разве могут 30 колес не радовать.
    Ответ написан
    Комментировать
  • Что по советуете подростку в программировании?

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