JavaScript заметки
Открыть в Telegram
Регулярные заметки по практическому JavaScript. Обучащию посты позволят прокачать навыки во Frontend-разработке. Можно почитать пока компилируется проект :) Сотрудничество: @noname_media Канал на бирже: telega.in/channels/notesjs/card?r=Wj7h1mbl
Больше7 368
Подписчики
-124 часа
-167 дней
-5730 дней
Архив постов
7 368
DocumentFragment
DocumentFragment является специальным DOM-узлом, который служит обёрткой для передачи списков узлов.
Мы можем добавить к нему другие узлы, но когда мы вставляем его куда-то, он «исчезает», вместо него вставляется его содержимое.
Например, getListContent ниже генерирует фрагмент с элементами <li>, которые позже вставляются в <ul>
#браузер #документ #изменение7 368
🔐 Теперь Хакинг и ИБ можно легко выучить по гайдам в картинках.
Первый канал с гайдами по этичному хакингу — @hack_guides
7 368
Клонирование узлов: cloneNode
Как вставить ещё одно подобное сообщение?
Мы могли бы создать функцию и поместить код туда. Альтернатива – клонировать существующий
div и изменить текст внутри него (при необходимости).
Иногда, когда у нас есть большой элемент, это может быть быстрее и проще.
Вызов elem.cloneNode(true) создаёт «глубокий» клон элемента – со всеми атрибутами и дочерними элементами. Если мы вызовем elem.cloneNode(false), тогда клон будет без дочерних элементов.
#браузер #документ #изменение7 368
Figma теперь есть в Telegram!
Figma - топовый образовательный ресурс прямо в Telegram, где любой желающий обучится веб-дизайну абсолютно бесплатно и сможет на этом зарабатывать. Разработка дизайна сайтов, оформлений, превью и многое другое!
⚡️Не упусти возможность стать веб-дизайнером: @figma_russia
7 368
Удаление узлов
Для удаления узла есть методы
node.remove().
Например, сделаем так, чтобы наше сообщение удалялось через секунду.
Если нам нужно переместить элемент в другое место – нет необходимости удалять его со старого.
Все методы вставки автоматически удаляют узлы со старых мест.
#браузер #документ #изменение7 368
⚡️Вы давно просили сделать обучающий канал, где каждый желающий сможет выучить все самые популярные языки программирования за неделю:
1. Обучение Python с нуля
2. Обучение JavaScript с нуля
3. Обучение С++ с нуля
4. Обучение С# с нуля
5. Обучение SQL с нуля
👨🏻🎓Учи все сразу, или выбери более подходящий язык программирования в лучшем образовательном IT-канале: https://t.me/+6coSVlN6jUtiNTRi
7 368
insertAdjacentHTML/Text/Element
С этим может помочь другой, довольно универсальный метод:
elem.insertAdjacentHTML(where, html).
Первый параметр – это специальное слово, указывающее, куда по отношению к elem производить вставку. Значение должно быть одним из следующих:
"beforebegin" – вставить html непосредственно перед elem,
"afterbegin" – вставить html в начало elem,
"beforeend" – вставить html в конец elem,
"afterend" – вставить html непосредственно после elem.
Второй параметр – это HTML-строка, которая будет вставлена именно «как HTML».
#браузер #документ #изменение7 368
❗Срочно нужны люди на удалённую работу:
ВОЗРАСТ НЕ ВАЖЕН! ОПЫТ НЕ НУЖЕН!
— Тестировщик игр – 3 500₽/день
— Перепечатать аудиокнигу – до 10 000₽
— Работа без опыта – до 5 000₽/день
Для тех, кто готов за вечер получать от 1 до 15 тысяч рублей – подписка на Юворк обязательна.
7 368
Методы вставки
Вот методы для различных вариантов вставки:
node.append(...nodes or strings) – добавляет узлы или строки в конец node,
node.prepend(...nodes or strings) – вставляет узлы или строки в начало node,
node.before(...nodes or strings) – вставляет узлы или строки до node,
node.after(...nodes or strings) – вставляет узлы или строки после node,
node.replaceWith(...nodes or strings) – заменяет node заданными узлами или строками.
#браузер #документ #изменение7 368
Всем привет!
Ребята создали чат-бота Masterhub, который рассылает разработчикам релевантные Frontend вакансии без спама.
Настрой бота за 1 минуту и получай до 50 предложений в неделю, отобранных по твоим предпочтениям.
@MasterHuBot
7 368
Методы вставки, append
Чтобы наш
div появился, нам нужно вставить его где-нибудь в document. Например, в document.body.
Для этого есть метод append, в нашем случае: document.body.append(div).
#браузер #документ #изменение7 368
Создание сообщения
В нашем случае сообщение – это
div с классом alert и HTML в нём.
Мы создали элемент, но пока он только в переменной. Мы не можем видеть его на странице, поскольку он не является частью документа.
#браузер #документ #изменение7 368
Ты знаешь сколько получает Middle Python разработчик в России?
От 120 000 рублей!
Подписывайся на канал Python заметки и стань мидлом за считанные недели абсолютно бесплатно!
Эксклюзивный и актуальный материал, а также тесты по современному Python каждый день.
Расширяй свои знания с нами!
7 368
Создание элемента
DOM-узел можно создать двумя методами:
document.createElement(tag) - создаёт новый элемент с заданным тегом.
document.createTextNode(text) - создаёт новый текстовый узел с заданным текстом.
Большую часть времени нам нужно создавать узлы элементов, такие как div для сообщения.
#браузер #документ #изменение7 368
Хочешь знать основные языки программирования?
Подписывайся на канал Simple code.
Там тебя ждут ежедневные посты по разным языкам: JavaScript, C#, C++, Python, Java.
7 368
Пример: показать сообщение
Рассмотрим методы изменения документа на примере – а именно, добавим на страницу сообщение, которое будет выглядеть получше, чем
alert.
Это был пример HTML. Далее мы будем создавать такой же div, используя JavaScript (предполагаем, что стили в HTML или во внешнем CSS-файле).
#браузер #документ #изменение7 368
Изменение документа
Добро пожаловать в новую главу на нашем канале "Изменение документа".
Модификации DOM – это ключ к созданию «живых» страниц.
Здесь мы увидим, как создавать новые элементы «на лету» и изменять уже существующие.
P.S. Найти все посты по этой главе вы можете с помощью комбинации хештегов, которые указаны ниже.
#браузер #документ #изменение
7 368
Лайфхак: чтобы найти норм работу на удалёнке (или офисную) — не надо шурстить HeadHunter и сотни мусорных каналов.
Надо просто держать в подписках React Job. Туда напрямую обращаются лучшие работодатели со всего мира.
Если вы пишете на React, вы только начинаете или уже профи в своем деле, то подписывайся на наш канал. У нас вы найдете стажировки, работу для разного уровня и рекомендации как не облажаться при трудоустройстве!
7 368
Итого по атрибутам и свойствам
Атрибуты – это то, что написано в HTML.
Свойства – это то, что находится в DOM-объектах.
Методы для работы с атрибутами:
elem.hasAttribute(name) – проверить на наличие.
elem.getAttribute(name) – получить значение.
elem.setAttribute(name, value) – установить значение.
elem.removeAttribute(name) – удалить атрибут.
elem.attributes – это коллекция всех атрибутов.
В большинстве ситуаций предпочтительнее использовать DOM-свойства. Нужно использовать атрибуты только тогда, когда DOM-свойства не подходят, когда нужны именно атрибуты, например:
- Нужен нестандартный атрибут. Но если он начинается с data-, тогда нужно использовать dataset.
- Мы хотим получить именно то значение, которое написано в HTML. Значение DOM-свойства может быть другим, например, свойство href – всегда полный URL, а нам может понадобиться получить «оригинальное» значение.
#браузер #документ #атрибуты_свойств