Apakah ada cara mudah untuk mengubah kode jQuery menjadi javascript biasa? Saya kira tanpa harus mengakses atau memahami kode sumber jQuery.
Apakah ada cara mudah untuk mengubah kode jQuery menjadi javascript biasa? Saya kira tanpa harus mengakses atau memahami kode sumber jQuery.
Jawaban:
Cara termudah adalah dengan hanya mempelajari cara melakukan traverse dan manipulasi DOM dengan api DOM biasa (Anda mungkin akan menyebutnya: JavaScript normal).
Namun ini bisa menyebalkan untuk beberapa hal. (itulah sebabnya perpustakaan diciptakan sejak awal).
Googling untuk "javascript DOM traversing / manipulation" akan memberi Anda banyak sumber daya yang berguna (dan beberapa kurang membantu).
Artikel-artikel di situs web ini cukup bagus: http://www.htmlgoodies.com/primers/jsp/
Dan seperti yang ditunjukkan Nosredna di komentar: pastikan untuk menguji di semua browser, karena sekarang jQuery tidak akan menangani ketidakkonsistenan untuk Anda.
Ini akan membuat Anda 90% jalan ke sana; )
window.$ = document.querySelectorAll.bind(document)
Untuk Ajax, Fetch API sekarang didukung pada versi terkini dari setiap browser utama . Sebab $.ready()
, hampirDOMContentLoaded
memiliki dukungan universal . Anda Mungkin Tidak Perlu jQuery memberikan metode asli yang setara untuk fungsi jQuery umum lainnya.
Zepto menawarkan fungsionalitas serupa tetapi berbobot 10K ritsleting. Ada build Ajax khusus untuk jQuery dan Zepto serta beberapa kerangka kerja mikro , tetapi jQuery / Zepto memiliki dukungan yang solid dan 10KB hanya ~ 1 detik pada modem 56K.
Saya baru saja menemukan tutorial yang cukup mengesankan tentang konversi jquery ke javascript dari Jeffrey Way pada 19 Jan 2012 *Copyright © 2014 Envato*
:
http://net.tutsplus.com/tutorials/javascript-ajax/from-jquery-to-javascript-a-reference/
Suka atau tidak suka, semakin banyak developer yang diperkenalkan ke dunia JavaScript melalui jQuery terlebih dahulu. Dalam banyak hal, para pendatang baru ini adalah yang beruntung. Mereka memiliki akses ke sejumlah besar API JavaScript baru, yang membuat proses traversal DOM (sesuatu yang banyak orang bergantung pada jQuery) jauh lebih mudah. Sayangnya, mereka tidak tahu tentang API ini!
Dalam artikel ini, kita akan mengambil berbagai tugas jQuery umum, dan mengonversinya menjadi JavaScript modern dan lama.
Saya mengusulkannya dalam komentar ke OP, dan setelah sarannya, saya mempublikasikannya memiliki jawaban untuk dirujuk semua orang.
Juga, Jeffrey Way menyebutkan tentang penyihir inspirasinya tampaknya menjadi dasar yang baik untuk pemahaman: http://sharedfil.es/js-48hIfQE4XK.html
Punya teaser, ini dokumen perbandingan jQuery dengan 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…
});
});
Anda harus melihatnya.
Apakah ada cara mudah untuk mengubah kode jQuery menjadi javascript biasa?
Tidak, terutama jika:
Sulit memahami contoh solusi javascript yang ditulis dalam jQuery.
JQuery dan semua kerangka kerja cenderung membuat pemahaman kode lebih mudah. Jika itu sulit dimengerti, maka vanilla javascript akan menyiksa :)
<input onclick="myfunction(this)">
dengan myfunction(field){ field.value = "3"; }
lebih masuk akal bagi saya daripada<input id='thing'>
dengan(function ($) { $(thing).click({ $(thing).val("3");});})()
Saya dapat melihat alasan, yang tidak terkait dengan postingan asli, untuk secara otomatis mengkompilasi kode jQuery ke dalam JavaScript standar:
16k - atau apa pun pustaka jQuery yang dikecilkan dan di-gzip - mungkin terlalu berlebihan untuk situs web Anda yang ditujukan untuk peramban seluler. W3c merekomendasikan bahwa semua permintaan HTTP untuk situs web seluler harus maksimal 20k.
Jadi saya menikmati coding di jQuery saya yang bagus, singkat, dan dirantai. Tapi sekarang saya perlu mengoptimalkan untuk seluler. Haruskah saya benar-benar kembali dan melakukan pekerjaan yang sulit dan membosankan untuk menulis ulang semua fungsi pembantu yang saya gunakan di perpustakaan jQuery? Atau adakah aplikasi praktis yang akan membantu saya mengompilasi ulang?
Itu akan sangat manis. Sayangnya, saya tidak berpikir hal seperti itu ada.