Конвертируем jQuery в JavaScript

Конвертер обладает расширенным списком правил конвертации jQuery в JavaScript, включая специфические плагины, нужно охватить как можно больше методов и конструкций jQuery, заменяя их на их нативные JavaScript-аналоги.

Описание правил конвертирования

Каждый раздел посвящен определенной категории правил (например, "Селекторы", "Манипуляции с DOM", "События" и т.д.). Рекомендуем демонстрацию используемых правил и примеры кода.

Селекторы

jQuery JavaScript Описание
$('selector')
document.querySelector('selector')
Выбор одного элемента.
$('selector').find('child')
document.querySelector('selector').querySelectorAll('child')
Поиск дочерних элементов.
$('selector').children()
document.querySelector('selector').children
Получение дочерних элементов.
$('selector').parent()
document.querySelector('selector').parentElement
Получение родительского элемента.
$('selector').parents()
document.querySelector('selector').parentElement
Получение всех родительских элементов.
$('selector').siblings()
Array.from(document.querySelector('selector').parentElement.children)
 .filter(el => el !== document.querySelector('selector'))
Получение соседних элементов.
$('selector').next()
document.querySelector('selector').nextElementSibling
Получение следующего элемента.
$('selector').prev()
document.querySelector('selector').previousElementSibling
Получение предыдущего элемента.
$('selector').closest('parent')
document.querySelector('selector').closest('parent')
Поиск ближайшего родительского элемента.

Манипуляции с DOM

jQuery JavaScript Описание
$('div').html('<p>Привет</p>')
document.querySelector('div').innerHTML = '<p>Привет</p>';
Изменение HTML-содержимого.
$('div').text('Привет')
document.querySelector('div').textContent = 'Привет';
Изменение текстового содержимого.
$('div').append('<p>Новый элемент</p>')
document.querySelector('div').insertAdjacentHTML('beforeend', '<p>Новый элемент</p>');
Добавление содержимого в конец элемента.
$('div').prepend('<p>Новый элемент</p>')
document.querySelector('div').insertAdjacentHTML('afterbegin', '<p>Новый элемент</p>');
Добавление содержимого в начало элемента.
$('div').before('<p>Новый элемент</p>')
document.querySelector('div').insertAdjacentHTML('beforebegin', '<p>Новый элемент</p>');
Добавление содержимого перед элементом.
$('div').after('<p>Новый элемент</p>')
document.querySelector('div').insertAdjacentHTML('afterend', '<p>Новый элемент</p>');
Добавление содержимого после элемента.
$('div').remove()
document.querySelector('div').remove();
Удаление элемента.
$('div').empty()
document.querySelector('div').innerHTML = '';
Очистка содержимого элемента.
$('div').clone()
document.querySelector('div').cloneNode(true);
Клонирование элемента.

Атрибуты и классы

jQuery JavaScript Описание
$('selector').attr('name', 'value')
document.querySelector('selector').setAttribute('name', 'value')
Установка атрибута.
$('selector').attr('name')
document.querySelector('selector').getAttribute('name')
Получение значения атрибута.
$('selector').removeAttr('name')
document.querySelector('selector').removeAttribute('name')
Удаление атрибута.
$('selector').addClass('class')
document.querySelector('selector').classList.add('class')
Добавление класса.
$('selector').removeClass('class')
document.querySelector('selector').classList.remove('class')
Удаление класса.
$('selector').toggleClass('class')
document.querySelector('selector').classList.toggle('class')
Переключение класса.
$('selector').hasClass('class')
document.querySelector('selector').classList.contains('class')
Проверка наличия класса.

События

jQuery JavaScript Описание
$('button').click(function() { ... })
document.querySelector('button').addEventListener('click', function() { ... });
Обработка кликов.
$('button').on('click', function() { ... })
document.querySelector('button').addEventListener('click', function() { ... });
Универсальный обработчик событий.
$('input').focus(function() { ... })
document.querySelector('input').addEventListener('focus', function() { ... });
Обработка фокуса.
$('input').blur(function() { ... })
document.querySelector('input').addEventListener('blur', function() { ... });
Обработка потери фокуса.
$('input').change(function() { ... })
document.querySelector('input').addEventListener('change', function() { ... });
Обработка изменения значения.
$('form').submit(function() { ... })
document.querySelector('form').addEventListener('submit', function() { ... });
Обработка отправки формы.
$('input').keydown(function() { ... })
document.querySelector('input').addEventListener('keydown', function() { ... });
Обработка нажатия клавиши.
$('input').keyup(function() { ... })
document.querySelector('input').addEventListener('keyup', function() { ... });
Обработка отпускания клавиши.
$('input').keypress(function() { ... })
document.querySelector('input').addEventListener('keypress', function() { ... });
Обработка нажатия и удержания клавиши.
$('div').mouseenter(function() { ... })
document.querySelector('div').addEventListener('mouseenter', function() { ... });
Обработка наведения курсора.
$('div').mouseleave(function() { ... })
document.querySelector('div').addEventListener('mouseleave', function() { ... });
Обработка ухода курсора.
$('div').mousedown(function() { ... })
document.querySelector('div').addEventListener('mousedown', function() { ... });
Обработка нажатия кнопки мыши.
$('div').mouseup(function() { ... })
document.querySelector('div').addEventListener('mouseup', function() { ... });
Обработка отпускания кнопки мыши.
$('div').mousemove(function() { ... })
document.querySelector('div').addEventListener('mousemove', function() { ... });
Обработка движения курсора.
$('div').scroll(function() { ... })
document.querySelector('div').addEventListener('scroll', function() { ... });
Обработка прокрутки.

AJAX

jQuery JavaScript Описание
$.get('url', function(data) { ... })
fetch('url').then(response => response.json()).then(data => { ... });
GET-запрос.
$.post('url', { data: 'value' }, function(response) { ... })
fetch('url', { method: 'POST', body: JSON.stringify({ data: 'value' }) })
 .then(response => response.json())
 .then(data => { ... });
POST-запрос.
$.ajax({ url: 'url', method: 'GET', success: function(data) { ... } })
fetch('url', { method: 'GET' })
 .then(response => response.json())
 .then(data => { ... });
Универсальный AJAX-запрос.

Утилиты

jQuery JavaScript Описание
$.each(array, function(index, value) { ... })
array.forEach((value, index) => { ... });
Перебор элементов массива.
$.extend({}, obj1, obj2)
Object.assign({}, obj1, obj2);
Объединение объектов.
$.trim(' string ')
' string '.trim();
Удаление пробелов.
$.isArray(array)
Array.isArray(array);
Проверка, является ли объект массивом.
$.inArray(value, array)
array.indexOf(value);
Поиск элемента в массиве.