Luodessaan dynaamisia responsiivisia verkkosivustoja kehittäjän on käsiteltävä mobiilieleitä sekä nipistämistä, napauttamista ja pyyhkäisyä. Näitä eleitä käsittelevät mobiilikehityskielet, kuten ' lepattaa ' tai ' reagoi natiivi ” ja JavaScript. Muu web-ohjelmointi ei käsittele tällaista tapahtumaa. Onneksi! jQueryn avulla kosketa tapahtumaa ”-laajennus, nämä tapahtumat tai eleet voidaan myös käsitellä.
Tämä blogi havainnollistaa prosessia, jolla jQuery touch -tapahtumalaajennusta käytetään matkapuhelimiin.
Kuinka käyttää jQuery Touch Events -laajennusta matkapuhelimille?
jQuery tiivistää kosketustapahtumien ja mobiilitapahtumien väliset erot käyttääkseen johdonmukaisia sovellusliittymiä tai laajennuksia, kuten ' kosketa tapahtumaa ”. Tämä laajennus tarjoaa useita tapahtumia, jotka on esitetty alla taulukkomuodossa:
ruoskimalla ankkaa | Kutsuu tietyn toiminnon elementin päällä pyyhkäisyn lopussa. |
scrollstart | Kutsuu tietyn toiminnon valitun elementin vierityksen alussa. |
rullaa | Kutsuu tietyn toiminnon elementin vierityksen lopussa. |
suunnanmuutos | Käynnistää toiminnon, kun laitteen tai matkapuhelimen suunta muuttuu, kuten liikkuminen pystysuuntaisessa asettelussa. |
Syntaksi
jQuery-kosketustapahtumien syntaksi on ilmoitettu alla:
$ ( 'Tämä' ) .touchEvent ( func ( ) {
// koodisi
} )
Yllä olevassa syntaksissa:
-
- ' Tämä ” on valitsin, joka on toiminto toiminnon kutsujana tai valittuna elementtinä.
- ' kosketa Tapahtuma ” on tietty tapahtuman nimi, jota käytetään, se voi tapahtua yllä mainitusta taulukosta.
- ' func() ” on mukautettu toiminto, jonka toimitettu kosketustapahtuma suorittaa.
Katsotaanpa nyt muutama esimerkki kosketustapahtumien ymmärtämiseksi paremmin.
Esimerkki 1: Tapin ja DoubleTapin käyttö
Tässä esimerkissä ' kosketa Tapahtuma ' tapahtuma ' napauta ' ja ' kaksoisnapautus ' käytetään kutsumaan tai suorittamaan jokin toiminto valitulle elementille:
< html >< pää >
< script src = 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.3/jquery.min.js' > käsikirjoitus >
< käsikirjoitus src = 'https://cdnjs.cloudflare.com/ajax/libs/jquery-touch-events/2.0.3/jquery.mobile-events.min.js' >
käsikirjoitus >
pää >
< kehon >
< h3 tyyli = 'väri: kadetinsininen;' > Linux h3 >
< -painiketta id = 't' > Napauta -painiketta >
< -painiketta id = 'dt' > Kaksoisnapauta -painiketta >
< s id = 'kohde' > Esimerkki DoubleTap- ja Tap Touch -tapahtumista. s >
< käsikirjoitus >
$ ( '#t' ) .tap ( toiminto ( ) {
$ ( '#kohde' ) .piilottaa ( ) ;
} )
$ ( '#dt' ) .doubletap ( toiminto ( ) {
$ ( '#kohde' ) .näytä ( ) ;
} )
käsikirjoitus >
kehon >
html >
Yllä olevan koodin selitys:
-
- Ensinnäkin CDN ' Sisällönjakeluverkosto ' jQuery- ja kosketustapahtumia varten lisätään ' ' -tunnistetta, jotta ne ovat käytettävissä. CDN:t löytyvät viralliselta sivulta jQuerysta ja käymällä cdnjs:ssä vastaavasti.
- Seuraavaksi luodaan kaksi painikeelementtiä tunnuksella ' t ' ja ' dt ”. Luo myös ' s ' elementti, jonka tunnus on ' kohde ”. Kosketustapahtuman toiminto suoritetaan tälle elementille.
- Sisällä ' ' -tunniste, valitse elementti, jonka tunnus on ' t ' ja liitä ' napauta ”kosketa tapahtumaa sillä. Tämä tapahtuma valitsee toisen html-elementin, jonka tunnus on ' kohde ' ja soveltaa ' piilottaa() ”menetelmä siinä.
- Valitse lisäksi ' dt ' -elementti ja käytä ' kaksoisnapautus kosketa tapahtumaa ja käytä samalla tavalla näytä() ' menetelmä ' kohde ” id-elementti.
Alla näkyy koodin kääntämisen jälkeen luotu tulos:
Yllä oleva tulos osoittaa, että toiminnot on suoritettu kosketustapahtumille 'tap' ja 'doubletap'.
Esimerkki 2: Pyyhkäisy- ja Swipeend-kosketustapahtumien käyttö
Tässä esimerkissä ' pyyhkäisemällä ' ja ' ruoskimalla ankkaa ” kosketustapahtumia tullaan esittelemään:
< käsikirjoitus >$ ( '#t' ) .pyyhkäise ( toiminto ( ) {
$ ( '#kohde' ) .piilottaa ( ) ;
} )
$ ( '#t' ) .pyyhkäisevä ankka ( toiminto ( ) {
$ ( '#kohde' ) .piilottaa ( ) ;
} )
käsikirjoitus >
Yllä olevan jQuery-koodin kuvaus on seuraava:
-
- Ensin valittu elementti valitaan sen tunnuksella ' t ' ja ' pyyhkäisemällä ”tapahtuma on liitteenä. Tämä tapahtuma käynnistää funktion ja käynnistynyt funktio valitsee kohdeelementin tunnuksen ' kohde ' ja soveltaa ' piilottaa() ”-menetelmää tehdäkseen sen sisällöstä näkymätön.
- Seuraavaksi ' ruoskimalla ankkaa ' tapahtumaa sovelletaan samaan elementtiin ja sen funktiota sovelletaan ' näytä() ' -menetelmä valitun elementin päälle tunnuksella ' kohde ', jotta sisältö näkyy, kun pyyhkäisytapahtuma päättyy.
Yllä olevan koodin tulos luodaan seuraavasti:
Tulos näyttää, että kohdistetun elementin sisältö piilotetaan pyyhkäisyhetkellä ja tulee näkyviin, kun pyyhkäisytapahtuma päättyy.
Esimerkki 3: Vieritysaloitus- ja vierityskosketustapahtumien käyttö
Tässä tapauksessa ' scrollstart ' ja ' rullaa ” kosketustapahtumat toteutetaan:
< käsikirjoitus >$ ( '#t' ) .scrollstart ( toiminto ( ) {
$ ( '#kohde' ) .piilottaa ( ) ;
} )
$ ( '#t' ) .scrollend ( toiminto ( ) {
$ ( '#kohde' ) .näytä ( ) ;
} )
käsikirjoitus >
Yllä olevan koodin selitys on seuraava:
-
- Ainoa muutos tässä esimerkissä on ' scrollstart ' ja ' rullaa 'tapahtumia esitettäväksi' piilottaa() ' ja ' näytä() ” -menetelmät elementin yli ja loput koodista pysyvät samoina kuin yllä olevassa esimerkissä.
- Kohdennettu teksti piilotetaan vierityksen alussa tai vierityksen aikana ja se tulee näkyviin, kun vieritys päättyy.
Yllä olevan koodin kääntämisen jälkeen luotu tulos näkyy alla:
Tulos näyttää, että elementin sisältö on piilotettu vierityksen aikana ja se tulee näkyviin, kun vieritys päättyy.
Tässä blogissa on selitetty mobiililaitteiden jQuery touch -tapahtumalaajennukset.
Johtopäätös
jQuery' kosketa tapahtumaa ' mobiililaajennus mahdollistaa jQueryn lisäämisen tapahtumiin, jotka käsittelevät erityisesti kosketuspuhelimissa tapahtuvia tapahtumia, kuten pyyhkäisyä, napautusta, suunnan vaihtamista jne. Tämän laajennuksen tarjoamat tapahtumat toteutetaan aivan kuten perinteiset ' klikkaamalla ” tai muita tapahtumia. Käyttämällä tätä laajennusta kehittäjä voi helposti soveltaa tiettyjä toimintoja käyttäjän vuorovaikutuksen mukaan mobiililaitteen kanssa. Tässä blogissa on selitetty jQuery-kosketustapahtuman liittäminen mobiililaitteille.