Задать вопрос
  • Почему transitionend не срабатывает и что конкретно происходит при изменении в DOM дереве?

    Luhashan,
    В разных браузерах по разному происходит оптимизация это потому-что они на разных движках)) Fox вроде на Geco.
    мы тут подумали с товарищами и решили, что код твой неоптимизирован и решили тебе помочь, чувак, вот эти строчки мы выкидываем нахрен, они нам не нравятся, это работать не будет

    Если же код плохой, то никакая оптимизация не поможет.

    Смех смехом, но именно это и делает оптимизатор))).
    Где-то в сети можно погуглить что он может делать.
    В крациях:
    JS->Байт код->Оптимизация-> Оптимизированный код
    Браузер использует байт код(С помошью движка) . и вставляет кусками оптимизированный код) И там очень много условий как можно медленный код сделать быстрым(Искуственно заставить движок сделать Оптимизированный код).
    По этому есть много докладов). И мемов, почему JS такой трудный.
    Но, код должен работать так, как его написал программист.

    Если бы так было пришлось бы делать много очень трудной работы.
    Например как:
    1) Отчищать память.
    2) Отрисовывать .
    3) Писать свои алгоритмы.
    4) ....
  • Почему transitionend не срабатывает и что конкретно происходит при изменении в DOM дереве?

    1) Я не разу не написал что свойства не отрабатывают
    2) Порядок(отрисовок) изменяет оптимизация V8.(Или ещё что-то)
    3) Я даже не знаю где про это можно прочитать. Тк как про это пишут в таких вопросах)
    4) Ваша логика вызывает 10 000 отрисовок, именно отрисовка является самым сложным. Именно от этого и спасает оптимизация. Она делает не мега умный и оптимизированный код более быстрым.
    Ещё раз
    "Все свойства отрабатывают."
    Сначала применяется класс потом происходит отрисовка.
    Как можно попытаться понять логику как это происходит
    Представим картину.
    let a = document.querySelector("test");//Получаем любой элемент
    let float = 0.1;
    setInterval(()=>{
    a.style.width = `${float}px`;
    a.style.height =`${float}px`;
    //10 свойств. к примеру.
    float +=0.1;
    },100);

    В крациях если бы всё это было без оптимизации представим сколько это было бы перерисовок.
    На каждое свойство мы заново отрисовываем картинку.
    А теперь представим что мы ещё на это действие заново рендерим дом. А потом ещё и заново рисуем каждое действие. Это очень затратно.
    В итоге он схлопывает все стилевые перерендеры в 1 действие( он сразу всё применяет. Потом рисует.)

    В вашем случае изменение дом - перерендр картинки.
    Стили - перерендр картинки.
    Схлопываем до 1 рендера.
    Дальше смотрим когда вызывается событие transitionend.

    PS.
    То что сначала происходит добавление класса а потом перемещение это я добавил для примера. Что-бы было легче понять. Самое важное это когда происходит рендр. И что он затрагивает.
  • Как сделать так, чтобы картинки выводились по очереди?

    Galina_Dubik, А в консоль элементы приходят ?) Если да, то до сих пор не понимаю в чём проблема)Что именно у вас не получается ?
  • Как сделать так, чтобы картинки выводились по очереди?

    Пока не понял в чём вопрос. А в чём проблема собственно ?
  • Почему transitionend не срабатывает и что конкретно происходит при изменении в DOM дереве?

    Luhashan,
    Тк как он применится если он сначала убирает класс. Потом рисует ноду.
    Моим мега дебаггером "мозг" я думаю что нода будет с opacity 1 - Значит всё применилось)
  • Почему сообщения в консоль выводятся не по порядку массива?

    $.get - очевидно что это не нативный js.
    Это промис. Изучите как работать с промисами
  • Как научится правильно верстать?

    Чёт я поперхнулся. От 2х лет научится верстать.
    Если хотите получить обратку по верстке напишите мне в телегу
  • Как правильно написать поиск по словам или группе слов в строке?

    FrelFrloich,
    В крациях можно это всё сделать раза в 2 проще. через цикл в цикле(forEach).
    Но, я хотел тренироваться с reduce и тд. Надеюсь не умрёте. Если что спрашивайте.
    В крациях я просто спличу строку и фильтрую по каждому слову. Это единственная идея которая пришла в голову. Ссылка
    let htmlItems = Array.from(document.querySelectorAll(".item-search"));
    		document
    			.querySelector(".input-search")
    			.addEventListener("input", function () {
    				let inputValue = this.value.toLowerCase();
    				if (!inputValue) {
    					//Показываем все поля
    				}
    
    				if (inputValue.indexOf(" ") != -1) {
    					let arFindWord = inputValue.split(" ");
    					let resultSearch = arFindWord.reduce(
    						(acc, item) => {
    							return acc.filter((htmlItem) => {
    								if (htmlItem.innerHTML.toLowerCase().indexOf(item) != -1) {
    									return htmlItem;
    								}
    							});
    						},
    						[...htmlItems]
    					);
    					htmlItems.forEach((item) => {
    						item.style.display = "none";
    					});
    					resultSearch.forEach((item) => {
    						item.style.display = "block";
    					});
    				} else {
    					htmlItems.forEach((item) => {
    						if (item.innerHTML.toLowerCase().indexOf(inputValue) != -1) {
    							item.style.display = "block";
    						} else {
    							item.style.display = "none";
    						}
    					});
    				}
    			});
  • Как правильно написать поиск по словам или группе слов в строке?

    FrelFrloich, 40% вопросов на этом сервисе задаються с учётом что человек (сам не знает чего хочет/решает задачу окольным путём/Вообще не понимает что нужно).
    В этом варианте вы или:
    1) Не понимаете как устроен поиск
    2) Хотите реализовать совершенно другое.
  • Как правильно написать поиск по словам или группе слов в строке?

    FrelFrloich,
    Что? Я ничего не понимаю.
    Как вы собрались проверять орфографию?
    Вы же понимаете что для компьютера нет такого понятия.
    Для него строка это символы в определённом порядке.
    символам приоброзованны в слова

    Кто их будет преобразовывать ? Компьютер? Для него нет такого понятие как слово.
    У него есть строки - ссылка в области памяти на последовательность символов.
    Символ - ссылка на существующее, кем-то описанное значение в определённой кодировке.
    То что вы пытаетесь сделать это называется умный поиск.
    Самый ближайший хороший аналог этого поиска это поисковик. И для его реализации используются совсем другие методы.
    1) База данных в которой храняться хеш таблицы. (Чтобы сделать "Слова" понятным для компьютера)
    2) Алгоритмы поиска по этим хеш таблицам.

    Минимально что нужно сделать.
    1) Разбить строку на слова.
    2) Определить ключевые слова.
    3) Выбрать важность этих слов.
    4) Создать возможные ошибки, Да для того чтобы проверить что слово не правильно нужно знать как будет не правильно))
    6) Ассоциативные бд что если в слове ошибка на букве "о"(мб это имелась буква "а")
    5).....
  • Табы по бэм и семантике как правильно?

    Дмитрий,
    Говорю за себя "Уровень абстракции выше".
    Табы в 90% случаев это переключатель.
    При беглом чтении. tabs_content - что думаю(Контент табов? Какой контент табов? Он же 1? Динамически меняется?)
    При беглом чтении .content - что думаю(Какой-то контент)
  • Сколько брать за верстку сайтов, когда у тебя большой опыт?

    Ankhena,
    Не вижу вообще никакой разницы в расчётах.
    В 8 часов закладывается всё время.На попить чай. Подумать и прочее.(Рабочий процесс называется) Задачи группируются в дни.
    (Маленькие объединяются) Никто не даёт новые задачи в 1 час перед завершением.
    Или мне считать исходя из рабочего дня в 12 часов ?? От этого нет толку.
    Тк же если это большие задачи на них погрузиться минут по 20 уходит. О чём вообще речь.
    Не понимаю вопроса.
    Не видел программистов которые мечутся между проектами как угорелые решая задачки по 20 минут. Это просто не выгодно. Никто не способен выдерживать такой менеджмент. Ты больше тратишь время на понять задачу чем делаешь. В фрилансе это критично и никто адекватно так не делает.

    Вы пробовали проработать 8 часов с включенным трекером только чисто на работу?

    Да. Под "Чисто работа" это называется рабочий процесс. Который я описал выше. Почти все так работают.
  • Сколько брать за верстку сайтов, когда у тебя большой опыт?

    archelon,
    Надеюсь полностью ещё раз прочитать изволите.
    1000 рублей час на 8 часов в день это 8к 8к*22 дня = 176000. Если вы во столько себя оцениваете при полной нагрузки можете рассчитать с помощью тайм трекеров на что уходит сколько времени и рассчитать стоимость для типовых услуг.

    и рассчитать стоимость для типовых услуг.

    Везде часы закладываются одинаково.
    В стоимость закладывают расходы на (Рекламу, работы + Доход). Если вы ищите заказ 21 день и 7 дней делаете это ваши проблемы, а не заказчика. Уверен что есть такие волшебники которые смогут это обосновать, но, берём абсолютно среднее значение.
  • Как изменить размеры input и button?

    причём на этом сайте работает, а на моём нет.

    Вы сами ответили на свой вопрос. Значит дело не в стилях ? ищите стили которые навешаны именно на необходимый вам input, Мб там установлено переопределение.
  • Как подключить SLICK SLIDER к gulp?

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

    Александр Дио,
    Если их мало, то отключать по 1му, и смотреть консоль.
    Возможно что сломались библиотеки. Их просто можно переустановить.
    (Нужно посмотреть каких они версии и скачать такие-же тк как в новых версиях может быть что-то по другому).
    Я бы сначала глянул на все скрипты которые не библиотеки.
    И по 1му отключал от страницы. Смотрел что из них вызывает ошибку.
    После смотрел бы сам файл. Что там не работает.
    Если не один из самописных файлов не прекратит ошибку. Отключал бы библиотеки.
    И смотрел шо там.
    Ну в общем обычный дебаг файлов. Ищешь что сломалось. Дебаг через консоль и прочее.
  • Зачем используют Django и Python, разве не удобнее сразу все сделать через Node.js и javascript фреймворки?

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

    А Где ошибка.
    Если надо делайте запрос.
    Только зачем надо?
    Вы же их уже знаете на странице, когда отправляете запрос.
  • Куда развиваться Python разработчику (не для поиска первой работы)?

    ибо не хочу быть заложником одного языка и фреймворка

    Тяжкая ноша. За пол года устали наверное.

    Большая проблема: Другой стек. Мобильная разработка включает кучу своих приколов. Сомневаюсь что хорошая идея учить новый стек всего спустя полгода как работаю

    Ну да, вы же этот стек за пол года освоили.

    больше про сугубо прикладные навыки "здесь и сейчас".

    Я так понимаю опять "Нужно что-то делать, а я не хочу делать. Я хочу учиться." И буду я думать о том, как лет через 10 как все поймут какой я, как стану я инженером.
    Есть люди которые "учатся ради учёбы". Я бы подумал над этим.
  • Можно ли ускорить функцию составления топа?

    DeFaNJI,
    Можно мне рабочий пример где у вас будет это делаться по 10-15 секунд.
    Когда вы увидете сколько пользователей для этого необходимо задайте себе следующий вопрос.
    Через сколько лет у вас будет столько пользователей.
    запрос вида: .sort({ [value]: -1 }).limit(10)

    Мне этот код вообще ни о чём не говорит. я не знаю что там внутри и как работает.

    Чтобы сразу писать хорошо. Нужно иметь 10+ лет опыта.
    Выбор решения "оптимального в данном случае не понятен" тк как там множество факторов и по одному коду это сделать нельзя.
    Есть решения которые мы можем делать. Но это не такой случай)
    Мб лучшее вообще создать структуру данных дерево?
    На текущем уровне думать об этом особо бесполезно.
    Технический долг это не создаёт.
    Значит нужно отложить на как можно поздний срок.
    Когда действительно этот код создаст нагрузку у вас уже будут другие знания.

    На текущем уровне старайтесь решать задачи и понимать как и что происходит.
    Это всё что мы можем.