jQuery -
Tab sis nyob rau hauv xyoo tas los no, nws cov xwm txheej yog cov cuab yeej tseem ceeb rau kev txhim kho lub vev xaib tau ploj mus. Cia peb saib yog vim li cas jQuery tau nrov thiab yog vim li cas nws poob ntawm kev zam, thiab nyob rau hauv dab tsi tshwm sim nws tseem pom zoo kom siv nws los tsim cov vev xaib niaj hnub.
Keeb kwm luv luv ntawm jQuery
John Resig (
jQuery yog ib lub tsev qiv ntawv Javascript raws li lub ntsiab lus: Javascript yuav tsum lom zem rau code. jQuery siv ntau yam, rov ua haujlwm, tshem tawm tag nrho cov cim tsis tsim nyog, thiab ua rau lawv luv luv, elegant, thiab huv si.
jQuery muaj ob lub ntsiab zoo. Thawj qhov yog API yooj yim rau kev tswj cov nplooj ntawv web. Hauv particular, nws muab txoj hauv kev zoo rau kev xaiv cov khoom. Tsis tsuas yog koj tuaj yeem xaiv los ntawm ID lossis chav kawm, jQuery tso cai rau koj sau cov kab lus nyuaj, piv txwv li, xaiv cov ntsiab lus raws li lawv txoj kev sib raug zoo nrog lwm cov ntsiab lus:
// Select every item within the list of people within the contacts element
$('#contacts ul.people li');
Nyob rau tib lub sijhawm, cov txheej txheem xaiv tau los ua ib lub tsev qiv ntawv cais
Qhov thib ob kom zoo dua ntawm lub tsev qiv ntawv yog tias nws abstracted sib txawv ntawm browsers. Hauv cov xyoo ntawd, nws nyuaj rau sau cov lej uas tuaj yeem ua haujlwm ntseeg tau hauv txhua qhov browsers.
Qhov tsis muaj tus qauv txhais tau tias cov neeg tsim khoom xav tau los suav rau ntau qhov sib txawv ntawm browsers thiab ntug rooj plaub. Ua tib zoo saib
// If Mozilla is used
if ( jQuery.browser == "mozilla" || jQuery.browser == "opera" ) {
// Use the handy event callback
jQuery.event.add( document, "DOMContentLoaded", jQuery.ready );
// If IE is used, use the excellent hack by Matthias Miller
// http://www.outofhanwell.com/blog/index.php?title=the_window_onload_problem_revisited
} else if ( jQuery.browser == "msie" ) {
// Only works if you document.write() it
document.write("<scr" + "ipt id=__ie_init defer=true " +
"src=javascript:void(0)></script>");
// Use the defer script hack
var script = document.getElementById("__ie_init");
script.onreadystatechange = function() {
if ( this.readyState == "complete" )
jQuery.ready();
};
// Clear from memory
script = null;
// If Safari is used
} else if ( jQuery.browser == "safari" ) {
// Continually check to see if the document.readyState is valid
jQuery.safariTimer = setInterval(function(){
// loaded and complete are both valid states
if ( document.readyState == "loaded" ||
document.readyState == "complete" ) {
// If either one are found, remove the timer
clearInterval( jQuery.safariTimer );
jQuery.safariTimer = null;
// and execute any waiting functions
jQuery.ready();
}
}, 10);
}
Thiab ua tsaug rau jQuery, cov neeg tsim khoom tuaj yeem hloov qhov kev txhawj xeeb ntawm tag nrho cov pitfalls mus rau lub xub pwg nyom ntawm pab neeg tsim lub tsev qiv ntawv.
Tom qab ntawd, jQuery tau ua kom yooj yim dua los siv cov thev naus laus zis ntau dua xws li cov animations thiab Ajax. Lub tsev qiv ntawv tau zoo dhau los ua tus qauv kev vam khom rau cov vev xaib. Thiab niaj hnub no nws powers ib feem loj ntawm Internet. W3Techs ntseeg qhov ntawd
Kev tswj hwm jQuery txoj kev loj hlob kuj tau dhau los ua kev cai. Nyob rau hauv 2011 pab neeg
Hauv 2015, jQuery Foundation koom nrog Dojo Foundation,
Hloov qhov xwm txheej
Txawm li cas los xij, hauv xyoo tas los no jQuery
Browsers
Rau ntau qhov laj thawj, qhov sib txawv ntawm qhov browser thiab cov kev txwv tau dhau los ua qhov tsis tseem ceeb. Ua ntej, standardization tau txhim kho. Cov neeg tsim tawm loj browser (Apple, Google, Microsoft thiab Mozilla) tab tom ua haujlwm ua ke los tsim
Txawm hais tias browsers tseem sib txawv ntawm ib leeg hauv ntau txoj hauv kev tseem ceeb, cov neeg muag khoom tsawg kawg muaj ib txoj hauv kev los tshawb nrhiav thiab tsim cov ntaub ntawv sib txawv es tsis txhob
// jQuery
$.getJSON('https://api.com/songs.json')
.done(function (songs) {
console.log(songs);
})
// native
fetch('https://api.com/songs.json')
.then(function (response) {
return response.json();
})
.then(function (songs) {
console.log(songs);
});
Txoj kev
// jQuery
const fooDivs = $('.foo div');
// native
const fooDivs = document.querySelectorAll('.foo div');
Tam sim no koj tuaj yeem tswj hwm cov chav kawm siv
// jQuery
$('#warning').toggleClass('visible');
// native
document.querySelector('#warning').classList.toggle('visible');
Rau ntawm qhov chaw
Kev siv cov yam ntxwv hauv haiv neeg txhim kho nplooj ntawv ua haujlwm. Ntau
Qhov thib ob yog vim li cas browsers tau hloov kho sai dua li ua ntej. Feem ntau ntawm lawv siv
Qhov no txhais tau hais tias cov tshiab browser nta thiab kho kab laum tau faib sai dua, thiab cov neeg tsim khoom tsis tas yuav tos kom txog thaum lub
Qhov thib peb yog vim li cas Internet Explorer tab tom mus txog lub xeev ntawm kev tsis sib haum xeeb. IE tau ntev dhau los ua qhov txwv tsis pub tsim web thoob ntiaj teb. Nws cov kab mob tau nthuav dav, thiab vim tias IE tau tuav lub xyoo 2000s thiab tsis siv lub tswv yim hloov tshiab txhua xyoo, cov ntawv qub tseem muaj ntau.
Hauv xyoo 2016, Microsoft tau nrawm rau kev tshem tawm ntawm IE,
Txawm tias jQuery nres txhawb IE 8 thiab hauv qab pib los ntawm
Cov txheej txheem tshiab
Txij li thaum lub advent ntawm jQuery, ntau lub moj khaum tau tsim, nrog rau cov thawj coj niaj hnub
Ua ntej, lawv ua kom yooj yim cais cov neeg siv interface rau hauv cov khoom. Lub moj khaum yog tsim los daws cov nplooj ntawv rendering thiab hloov kho tshiab. Thiab jQuery feem ntau tsuas yog siv rau kev hloov kho, tawm hauv txoj haujlwm ntawm kev muab nplooj ntawv thawj zaug rau lub server.
Ntawm qhov tod tes, React, Angular thiab Vue Cheebtsam tso cai rau koj kom nruj ob peb HTML, code thiab txawm tias CSS. Ib yam li peb faib cov cai hauv paus rau ntau qhov kev ua haujlwm ntawm tus kheej thiab cov chav kawm, lub peev xwm los faib cov kev sib txuas rau hauv cov khoom siv rov siv tau ua kom yooj yim rau kev tsim thiab tswj cov chaw nyuaj.
Qhov thib ob qhov zoo dua yog tias cov txheej txheem tsis ntev los no ua raws li cov lus tshaj tawm, uas tus tsim tawm piav qhia qhov kev sib txuas yuav tsum zoo li cas thiab tawm mus rau hauv lub moj khaum kom ua txhua yam tsim nyog hloov pauv kom ua tiav qhov xav tau. Txoj hauv kev no yog qhov tsis sib xws rau txoj hauv kev tseem ceeb uas ua rau jQuery code.
Hauv jQuery, koj qhia meej meej sau cov kauj ruam kom hloov pauv. Thiab nyob rau hauv lub moj khaum tshaj tawm koj hais, "Raws li cov ntaub ntawv no, lub interface yuav tsum zoo li no." Qhov no tuaj yeem ua rau kev sau kab tsis muaj kab mob yooj yim dua.
Cov neeg tsim tawm tau txais cov kev qhia tshiab rau kev txhim kho lub vev xaib, uas yog vim li cas jQuery qhov chaw tau poob qis.
Thaum twg siv jQuery?
Yog li thaum yuav tsum siv jQuery?
Yog tias qhov nyuaj ntawm qhov project nce, ces nws yog qhov zoo dua los pib nrog lwm lub tsev qiv ntawv lossis lub moj khaum uas tso cai rau koj kom muaj txiaj ntsig tswj kev nyuaj. Piv txwv li, faib lub interface rau hauv cov khoom. Siv jQuery ntawm cov vev xaib zoo li no yuav zoo thaum xub thawj, tab sis nws yuav sai sai ua rau spaghetti code uas koj tsis paub meej tias cov fragment cuam tshuam qhov twg ntawm nplooj ntawv.
Kuv tau nyob hauv qhov xwm txheej zoo li no, thaum sim ua kom muaj kev hloov pauv, nws zoo li ib txoj haujlwm nyuaj. Koj tsis tuaj yeem paub tseeb tias koj yuav tsis ua txhaum dab tsi vim jQuery selectors nyob ntawm tus qauv HTML tsim los ntawm server.
Ntawm qhov kawg ntawm qhov ntsuas yog qhov chaw yooj yim uas tsuas yog xav tau me ntsis ntawm kev sib cuam tshuam lossis cov ntsiab lus dynamic. Kuv yuav tsis ua rau jQuery rau cov xwm txheej no, vim tias muaj ntau ntau koj tuaj yeem ua nrog APIs ib txwm muaj.
Txawm tias kuv xav tau ib yam dab tsi muaj zog dua, kuv yuav nrhiav ib lub tsev qiv ntawv tshwj xeeb, xws li.
Kuv xav tias qhov laj thawj zoo tshaj plaws rau kev siv jQuery yog tias nws muab kev ua haujlwm dav dav rau pem hauv ntej kawg ntawm lub vev xaib. Hloov chaw ntawm kev kawm ntau hom APIs lossis cov tsev qiv ntawv tshwj xeeb, koj tuaj yeem nyeem cov ntaub ntawv jQuery nkaus xwb thiab ua haujlwm tau sai.
Txoj hauv kev tseem ceeb tsis ntsuas qhov zoo, tab sis nws yooj yim rau kev kawm dua li kev tshaj tawm ntawm lwm lub tsev qiv ntawv. Rau ib lub vev xaib uas muaj peev xwm txwv tsis pub muaj kev txwv, nws yog qhov zoo dua los siv jQuery thiab ua haujlwm ntsiag to: lub tsev qiv ntawv tsis xav tau kev sib dhos lossis kev sib sau ua ke.
Tsis tas li ntawd, jQuery yog qhov zoo yog tias koj ntseeg siab tias koj lub vev xaib yuav tsis nyuaj rau lub sijhawm, thiab yog tias koj tsis quav ntsej txog kev ua haujlwm ib txwm muaj, uas yuav tsum tau sau cov lej ntau dua li jQuery.
Koj tuaj yeem siv lub tsev qiv ntawv no yog tias koj xav tau los txhawb cov ntawv qub ntawm IE. Tom qab ntawd jQuery yuav ua haujlwm rau koj zoo li nws tau rov qab rau lub sijhawm thaum IE yog qhov browser nrov tshaj plaws.
Saib rau yav tom ntej
jQuery yuav tsis ploj mus sai sai. Nws
Tshwj tsis yog tias jQuery qhov kev ua haujlwm hloov pauv loj, nws zoo li kev siv lub tsev qiv ntawv yuav txuas ntxiv mus qeeb tab sis tsis tu ncua nyob rau ob peb xyoos tom ntej no. Cov vev xaib tshiab yuav raug tsim los siv cov txheej txheem niaj hnub ntau dua los ntawm qhov pib, thiab siv cov ntaub ntawv tsim nyog rau jQuery tau dhau los ua qhov tsawg.
Qee tus neeg tsis nyiam tus nqi uas cov cuab yeej txhim kho lub vev xaib dhau los, tab sis rau kuv nws yog pov thawj ntawm kev nce qib sai. jQuery tau tso cai rau peb ua ntau yam zoo dua. Tib yam muaj tseeb rau nws cov neeg ua tiav.
Tau qhov twg los: www.hab.com