README-ru
Вам не нужен jQuery
В наше время среда front-end разработки быстро развивается, и современные браузеры достаточно хорошо реализовали работу с DOM/BOM API. Вам не нужно изучать jQuery с нуля для манипуляцией DOM'ом или объектами событий. В то же время, благодаря лидирующим front-end библиотекам, таким как React, Angular и Vue, манипуляция DOM'ом напрямую становится антипаттерном, а jQuery теряет свою значимость. Этот проект объединяет большинство альтернативных методов jQuery в нативном исполнении с поддержкой IE 10+.
Содержание
Переводы
Query Selector
Для часто используемых селекторов, таких как class, id или attribute мы можем использовать document.querySelector или document.querySelectorAll для замены. Разница такова:
document.querySelectorвозвращает первый совпавший элементdocument.querySelectorAllвозвращает все совпавшие элементы как список узлов (NodeList). Его можно конвертировать в массив, используяArray.prototype.slice.call(document.querySelectorAll(selector));Если никакие элементы не совпадут, jQuery и
document.querySelectorAllвернет[]гдеdocument.querySelectorвернетnull.
Заметка:
document.querySelectorиdocument.querySelectorAllдостаточно МЕДЛЕННЫ, старайтесь использоватьgetElementById,document.getElementsByClassNameилиdocument.getElementsByTagNameесли хотите улучшить производительность.
1.0 Query by selector
1.1 Запрос по классу
1.2 Запрос по ID
1.3 Запрос по атрибуту
1.4 Найти среди потомков
1.5 Родственные/Предыдущие/Следующие Элементы
Родственные элементы
Предыдущие элементы
Следующие элементы
1.6 Ближайший
Возвращает первый совпавший элемент по предоставленному селектору, обходя от текущего элементы до документа.
1.7 Родители до
Получить родителей каждого элемента в текущем результате совпавших элементов, но не включая элемент, совпавший с указанным селектором, узлом DOM'а, или объектом jQuery.
1.8 Форма
Input/Textarea
Получить индекс e.currentTarget между
.radio
1.9 Содержимое Iframe
$('iframe').contents()возвращаетcontentDocumentименно для этого iframeКонтент Iframe
Iframe Query
1.10 Найти body
1.11 Получение и изменение атрибута
Найти атрибут
Добавление атрибута
Найти
data-атрибут
CSS & Style
Добавить класс
Удалить class
Имеет ли класс
Переключить класс
2.2 Ширина и Высота
Ширина и высота теоретически имеют общие свойства, например возьмем высоту:
Высота окна
Высота документа
Высота элемента
2.3 Позиция и смещение
Position
Получить текущие координаты элемента относительно смещения его родителя
Offset
Получить текущие координаты элемента относительно документа
2.4 Прокрутка вверх
Манипуляции DOM
3.1 Remove
Удаление элемента из DOM.
3.2 Text
Получить текст
Получить текстовое содержимое элемента, включая его потомков,
Присвоить текст
3.3 HTML
Получить HTML
Присвоить HTML
3.4 Append
Добавить родительскому элементу новый дочерний элемент.
3.5 Prepend
Добавить родительскому элементу новый дочерний элемент перед остальными
3.6 insertBefore
Вставка нового элемента перед выбранным элементом
3.7 insertAfter
Вставка новго элемента после выбранного элемента
3.8 is
Возвращает
trueесли совпадает с селектором запроса
Ajax
Fetch API - новый стандарт, заменяющий XMLHttpRequest для ajax. Работает в Chrome и Firefox, вы можете использовать полифилы, для поддержки старых браузеров.
Попробуйте github/fetch для IE9+ или fetch-ie8 для IE8+, fetch-jsonp для JSONP-запросов.
4.1 Загрузить данные с сервера и поместить полученный HTML в элемент.
События
Для полной замены пространства имен и делегирования, используйте oui-dom-events
5.0 Готовность документа по событию
DOMContentLoaded5.1 Связать событие используя
on5.2 Отвязать событие используя
off5.3 Trigger
Утилиты
6.1 isArray
6.2 Trim
6.3 Назначение объекта
Дополнительно, используйте полифил object.assign https://github.com/ljharb/object.assign
6.4 Contains
Альтернативы
You Might Not Need jQuery - Примеры как исполняются частые события, элементы, ajax и тд с ванильным javascript.
npm-dom и webmodules - Отдельные DOM модули можно найти на NPM
Поддержка браузеров
![]()
![]()
![]()
![]()
![]()
Latest ✔
Latest ✔
10+ ✔
Latest ✔
6.1+ ✔
License
MIT
Last updated