Есть ли простой способ конвертировать jquery-код в javascript?
В javascript/dom есть много примеров достижения определенных вещей в jQuery. Однако использование jQuery не всегда является вариантом, который может помочь понять примеры javascript-решений, написанных в jQuery.
Есть ли простой способ конвертировать jQuery-код в обычный javascript? Я думаю, без необходимости доступа или понимания исходного кода jQuery.
Ответы
Ответ 1
Самый простой способ - просто узнать, как выполнять DOM-переходы и манипуляции с простым DOM-api (вы, вероятно, называете это: обычный JavaScript).
Это может быть болью для некоторых вещей. (именно поэтому библиотеки были изобретены в первую очередь).
Googling для "javascript DOM traversing/manipulation" должен предоставить вам множество полезных (и некоторых менее полезных) ресурсов.
Статьи на этом сайте довольно хороши: http://www.htmlgoodies.com/primers/jsp/
И как указывает Носредна в комментариях: обязательно проверьте во всех браузерах, потому что теперь jQuery не будет обрабатывать несоответствия для вас.
Ответ 2
Это даст вам 90% пути; )
window.$ = document.querySelectorAll.bind(document)
Для Ajax Fetch API теперь поддерживаемый на текущую версию каждого главного браузера. Для $.ready()
DOMContentLoaded
имеет рядом с универсальной поддержкой. Вам не нужно jQuery дает эквивалентные собственные методы для других общих функций jQuery.
Zepto предлагает аналогичную функциональность, но весит 10 кг. Существуют специальные сборки Ajax для jQuery и Zepto, а также некоторые micro frameworks, но jQuery/Zepto имеют прочную поддержку, а 10 КБ - только 1 секунду на модеме 56K.
Ответ 3
Я только что нашел этот довольно впечатляющий учебник о jquery для преобразования javascript из Jeffrey Way 19 января 2012 года *Copyright © 2014 Envato*
:
http://net.tutsplus.com/tutorials/javascript-ajax/from-jquery-to-javascript-a-reference/
Нравится нам это или нет, все больше и больше разработчиков впервые представленный в JavaScript JavaScript через jQuery. Во многих пути, эти новички - счастливые. Они имеют доступ к множество новых API JavaScript, которые делают процесс DOM обход (что многие люди зависят от jQuery) значительно проще. К сожалению, они не знают об этих API!
В этой статье хорошо рассмотрите множество общих задач jQuery и конвертируйте их в современный и унаследованный JavaScript.
Я предложил его в комментарии к OP, и после его предложения, я публикую его, у него есть ответ, чтобы все могли обратиться к нему.
Кроме того, Джеффри Уэй упомянул о своем вдохновении, ведьма, похоже, является хорошим ориентиром для понимания: http://sharedfil.es/js-48hIfQE4XK.html
Имеет тизер, это сравнение документа jQuery с javascript:
$(document).ready(function() {
// code…
});
document.addEventListener("DOMContentLoaded", function() {
// code…
});
$("a").click(function() {
// code…
})
[].forEach.call(document.querySelectorAll("a"), function(el) {
el.addEventListener("click", function() {
// code…
});
});
Вы должны посмотреть.
Ответ 4
Есть ли простой способ конвертировать jQuery код для обычного javascript?
Нет, особенно если:
понимание примеры решений javascript написанное в jQuery [is] сложно.
JQuery и все структуры, как правило, упрощают понимание кода. Если это трудно понять, тогда ванильный javascript будет пыткой:)
Ответ 5
Я знаю, что это старый поток, но есть отличный ресурс, показывающий собственный javascript, эквивалентный jquery, и даже примеры ES6. Это наиболее полное из того, что я нашел из других статей, посвященных этому вопросу.
jQuery для Vanilla JS
Ответ 6
Я вижу причину, не связанную с исходным сообщением, для автоматической компиляции кода jQuery в стандартный JavaScript:
16k - или что-то вроде gzipped, миниатюрной библиотеки jQuery - может быть слишком много для вашего веб-сайта, предназначенного для мобильного браузера. W3c рекомендует, чтобы все HTTP-запросы для мобильных веб-сайтов составляли максимум 20 тыс.
спецификации w3c для мобильных устройств
Так что мне нравится кодирование в моем хорошем, кратком, заколдованном jQuery. Но теперь мне нужно оптимизировать для мобильных устройств. Должен ли я действительно вернуться и выполнить сложную, утомительную работу по переписыванию всех вспомогательных функций, которые я использовал в библиотеке jQuery? Или есть какое-то удобное приложение, которое поможет мне перекомпилировать?
Это было бы очень мило. К сожалению, я не думаю, что такая вещь существует.
Ответ 7
Если вы хотите изучить javascript, посмотрите эти видеозаписи Дугласа Крокфорда. Они очень хорошие.
Ответ 8
Книга Джереми Кейта " DOM Scripting - отличное введение в работу с Javascript и DOM. Я очень рекомендую, хотите ли вы использовать jQuery или нет. Хорошо знать, что происходит внизу.
Ответ 9
Есть несколько хороших книг. Мне нравится ppk на JavaScript. Здесь C глава 8 в DOM.
Ответ 10
Вы можете попробовать http://www.jsobfuscate.com. Согласно сайту:
Obfuscation предоставляет способ защитить ваш код, сделав его нечитабельно с использованием передовых алгоритмов, а также уменьшает размер ваших файлов для скорости.
Это означает, что вы, возможно, не сможете "прочитать" код js, но преобразование jQuery в Javascript полностью работает.