ch
Feedback
JavaScript заметки

JavaScript заметки

前往频道在 Telegram

Регулярные заметки по практическому JavaScript. Обучащию посты позволят прокачать навыки во Frontend-разработке. Можно почитать пока компилируется проект :) Сотрудничество: @noname_media Канал на бирже: telega.in/channels/notesjs/card?r=Wj7h1mbl

显示更多
7 739
订阅者
+124 小时
-57
-5130
帖子存档
Примерно 8 лет назад, я выбрал изучение программирования, что бы перейти на удаленную работу. В голове был фриланс, шум прибо
Примерно 8 лет назад, я выбрал изучение программирования, что бы перейти на удаленную работу. В голове был фриланс, шум прибоя и тень от пальмы на моем ноутбуке. В итоге все оказалось не столь радужно, пока я не взглянул на свою деятельность иначе. Работая на других с ума можно сойти от однотипных задач. Работая на фриланс биржах, можно положить зубы на полку. ‼️ Но можно по-другому. На своем канале я рассказываю, как ворваться в веб за месяц и зарабатывать на разработке сайтов, без общедоступных конструкторов типа Тильды. Без конкуренции. Без длительного изучения программирования. Работая на себя и от себя. В закрепе дана наиболее полная информация, подписывайтесь на канал, уже вышел цикл статей раскрывающий все секреты и нюансы — Внеконкурентного Подхода к веб разработке! 👉 Подписаться.

Чтобы убрать обработчик removeEventListener, нужна та же фаза Если мы добавили обработчик вот так addEventListener(..., true)
Чтобы убрать обработчик removeEventListener, нужна та же фаза Если мы добавили обработчик вот так addEventListener(..., true), то мы должны передать то же значение аргумента capture в removeEventListener(..., true), когда снимаем обработчик. #браузер #документ #погружение

Отлов погружения Ранее мы говорили только о всплытии, потому что другие стадии, как правило, не используются и проходят незам
Отлов погружения Ранее мы говорили только о всплытии, потому что другие стадии, как правило, не используются и проходят незаметно для нас. Обработчики, добавленные через on<event>-свойство или через HTML-атрибуты, или через addEventListener(event, handler) с двумя аргументами, ничего не знают о фазе погружения, а работают только на 2-ой и 3-ей фазах. Чтобы поймать событие на стадии погружения, нужно использовать третий аргумент capture (см. картинку выше). Существуют два варианта значений опции capture: Если аргумент false (по умолчанию), то событие будет поймано при всплытии. Если аргумент true, то событие будет перехвачено при погружении. Обратите внимание, что хоть и формально существует 3 фазы, 2-ую фазу («фазу цели»: событие достигло элемента) нельзя обработать отдельно, при её достижении вызываются все обработчики: и на всплытие, и на погружение. #браузер #документ #погружение

ТОП 300 лучших курсов по программированию и хакингу утекли в сеть Скачать в телеграм-канале — https://t.me/+VYhVKWeW32cyMjYy
ТОП 300 лучших курсов по программированию и хакингу утекли в сеть Скачать в телеграм-канале — https://t.me/+VYhVKWeW32cyMjYy

Погружение Существует ещё одна фаза из жизненного цикла события – «погружение» (иногда её называют «перехват»). Она очень ред
Погружение Существует ещё одна фаза из жизненного цикла события – «погружение» (иногда её называют «перехват»). Она очень редко используется в реальном коде, однако тоже может быть полезной. Стандарт DOM Events описывает 3 фазы прохода события: 1) Фаза погружения (capturing phase) – событие сначала идёт сверху вниз. 2) Фаза цели (target phase) – событие достигло целевого(исходного) элемента. 3) Фаза всплытия (bubbling stage) – событие начинает всплывать. Картинка из спецификации демонстрирует, как это работает при клике по ячейке <td>, расположенной внутри таблицы. То есть при клике на <td> событие путешествует по цепочке родителей сначала вниз к элементу (погружается), затем оно достигает целевой элемент (фаза цели), а потом идёт наверх (всплытие), вызывая по пути обработчики. #браузер #документ #погружение

Не прекращайте всплытие без необходимости! Всплытие – это удобно. Не прекращайте его без явной нужды, очевидной и архитектурно прозрачной. Зачастую прекращение всплытия через event.stopPropagation() имеет свои подводные камни, которые со временем могут стать проблемами. Например: 1) Мы делаем вложенное меню. Каждое подменю обрабатывает клики на своих элементах и делает для них stopPropagation, чтобы не срабатывало внешнее меню. 2) Позже мы решили отслеживать все клики в окне для какой-то своей функциональности, к примеру, для статистики – где вообще у нас кликают люди. Некоторые системы аналитики так делают. Обычно используют document.addEventListener('click'…), чтобы отлавливать все клики. 3) Наша аналитика не будет работать над областью, где клики прекращаются stopPropagation. Увы, получилась «мёртвая зона». #браузер #документ #всплытие

IT Jobs from all over the world here
IT Jobs from all over the world here

event.stopImmediatePropagation() Если у элемента есть несколько обработчиков на одно событие, то даже при прекращении всплыти
event.stopImmediatePropagation() Если у элемента есть несколько обработчиков на одно событие, то даже при прекращении всплытия все они будут выполнены. То есть, event.stopPropagation() препятствует продвижению события дальше, но на текущем элементе все обработчики будут вызваны. Для того, чтобы полностью остановить обработку, существует метод event.stopImmediatePropagation(). Он не только предотвращает всплытие, но и останавливает обработку событий на текущем элементе. #браузер #документ #всплытие

Не очень комфортно заниматься сексом, когда твой телефон прослушивает Google 🤷 Или писать личную СМСку, когда каждое слово видит клавиатурный шпион. Приватности больше нет. Крупные поисковики в открытую залазят к нам в трусы ради прибыли, и только 5-10% пользователей знают, как этому противопостоять. Для тех, кому не наплевать на свою безопасность в сети, есть канал «Отдел К». Как понять, что ваш смартфон хотели взломать? Какие 3 настройки отключить, чтобы избавиться от прослушки? Как по любому сообщению узнать точное гео собеседника? Осторожно, после подписки вам захочется удалить все соцсети: @cyber_cab

Прекращение всплытия Всплытие идёт с «целевого» элемента прямо наверх. По умолчанию событие будет всплывать до элемента&nbsp;
Прекращение всплытия Всплытие идёт с «целевого» элемента прямо наверх. По умолчанию событие будет всплывать до элемента <html>, а затем до объекта document, а иногда даже до window, вызывая все обработчики на своём пути. Но любой промежуточный обработчик может решить, что событие полностью обработано, и остановить всплытие. Для этого нужно вызвать метод event.stopPropagation(). Например, здесь (см. картинку) при клике на кнопку <button> обработчик body.onclick не сработает. #браузер #документ #всплытие

Хватит пытаться изобрести велосипед Канал Нестыдный код ежедневно выпускает готовые решения повседневных задач: 🔸 Карточки 🔸 Кнопки 🔸 Анимации 🔸 Интерактив Подпишись, чтобы не потерять.

Свойство event.target Всегда можно узнать, на каком конкретно элементе произошло событие. Самый глубокий элемент, который выз
Свойство event.target Всегда можно узнать, на каком конкретно элементе произошло событие. Самый глубокий элемент, который вызывает событие, называется целевым элементом, и он доступен через event.target. Отличия от this (=event.currentTarget): - event.target – это «целевой» элемент, на котором произошло событие, в процессе всплытия он неизменен. - this – это «текущий» элемент, до которого дошло всплытие, на нём сейчас выполняется обработчик. Например, если стоит только один обработчик form.onclick, то он «поймает» все клики внутри формы. Где бы ни был клик внутри – он всплывёт до элемента <form>, на котором сработает обработчик. При этом внутри обработчика form.onclick: - this (=event.currentTarget) всегда будет элемент <form>, так как обработчик сработал на ней. - event.target будет содержать ссылку на конкретный элемент внутри формы, на котором произошёл клик. #браузер #документ #всплытие

Почти все события всплывают. Ключевое слово в этой фразе – «почти». Например, событие focus не всплывает. В дальнейшем мы уви
Почти все события всплывают. Ключевое слово в этой фразе – «почти». Например, событие focus не всплывает. В дальнейшем мы увидим и другие примеры. Однако, стоит понимать, что это скорее исключение, чем правило, всё-таки большинство событий всплывают. #браузер #документ #всплытие

Компуктерная теперь в Telegram! Даже для опытного пользователя компьютер, как океан - изучен менее чем на 7% Например, знаете
Компуктерная теперь в Telegram! Даже для опытного пользователя компьютер, как океан - изучен менее чем на 7% Например, знаете ли вы, что есть программы, которые могут ускорить ваш ПК на 90%? А умеете ли вы прятать файлы в картинку и делать "невидимые ярлыки"? Тысячи крутых фишек вы можете найти по ссылке 👇 https://t.me/+hTHtWnk2QK4wODYy

Всплытие Принцип всплытия очень простой. Когда на элементе происходит событие, обработчики сначала срабатывают на нём, потом
Всплытие Принцип всплытия очень простой. Когда на элементе происходит событие, обработчики сначала срабатывают на нём, потом на его родителе, затем выше и так далее, вверх по цепочке предков. Например, есть 3 вложенных элемента FORM > DIV > P с обработчиком на каждом. Клик по внутреннему <p> вызовет обработчик onclick: - Сначала на самом <p>. - Потом на внешнем <div>. - Затем на внешнем <form>. - И так далее вверх по цепочке до самого document. Поэтому если кликнуть на <p>, то мы увидим три оповещения: p → div → form. Этот процесс называется «всплытием», потому что события «всплывают» от внутреннего элемента вверх через родителей подобно тому, как всплывает пузырёк воздуха в воде. #браузер #документ #всплытие

GitHub теперь в Telegram! Подписывайтесь: @github
GitHub теперь в Telegram! Подписывайтесь: @github

Пример всплытия Этот обработчик для&nbsp;&nbsp;сработает, если вы кликните по любому из вложенных тегов, будь то&nbsp;&nbsp;и
Пример всплытия Этот обработчик для <div> сработает, если вы кликните по любому из вложенных тегов, будь то <em> или <code>. #браузер #документ #всплытие

Animation – эффект параллакса для изображения с изменением текста при прокрутке страницы CSS доширак – канал с подборкой готовых анимаций для вашего проекта Подписывайся и получай новые идеи каждый день!💡

textContent: просто текст Свойство&nbsp;textContent&nbsp;предоставляет доступ к&nbsp;тексту&nbsp;внутри элемента за вычетом в
textContent: просто текст Свойство textContent предоставляет доступ к тексту внутри элемента за вычетом всех <тегов> (см. пример на картинке выше). Как мы видим, возвращается только текст, как если бы все <теги> были вырезаны, но текст в них остался. На практике редко появляется необходимость читать текст таким образом. Намного полезнее возможность записывать текст в textContent, т.к. позволяет писать текст «безопасным способом». #браузер #документ #свойства_узлов

Как найти нужный плагин для WordPress? Установить все 58 966…? Нет, подписаться на канал Лениво без кода - где публикуют пров
Как найти нужный плагин для WordPress? Установить все 58 966…? Нет, подписаться на канал Лениво без кода - где публикуют проверенные плагины и инструкцию к ним.  Не гугли - подпишись!