Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
  1. Code
  2. Web Development
Code

Paano ang Pag-gawa ng isang Keypress Navigation Gamit ang jQuery

by
Difficulty:BeginnerLength:MediumLanguages:

Tagalog (Wikang Tagalog) translation by Anna Nelson (you can also view the original English article)

Ang susi sa isang matagumpay na website ay ang pagiging madali kung saan hinahanap ng isang gumagamit ang kanilang hinahanap. Kaya ito ay nangangailangan ng oag-gamit ng maraming oras at pagsusumikap na gumawa ng parehong kapaki-pakinabang at biswal na nakakaakit na mga sistema ng paghahanap. Kamakailan lamang, nagsimula akong mag-eksperimento sa mga bagong paraan upang makapaghanap sa isang website. Sa pagtuturo na ito ay ipapakita ko sa iyo kung paano ipaalam sa gumagamit na gamitin ang kanilang keyboard upang magamit ang iyong site.

Hakbang 1

Ang unang bagay na kailangan nating gawin ay gawin ang aming test page. Sa kasong ito, babanggitin ko ito bilang demo.html at naglalaman ito ng mga sumusunod:

  1. Isang link sa balangkas ng jQuery.
  2. Isang link sa script na ating gagamitin mamaya. Taeagin natin ito na keypress_nav.js
  3. Ang isang link sa isang CSS file na tinatawag na style.css (gagawin din namin ito mamaya).
  4. Isang header div na maglalaman ng aming paghahanap kasama ng iba pang mga bagay. At
  5. Limang natatanging elemento ng div na magsisilbing mga pahina para sa aming site.

Kaya, narito ang kung paano ang hitsura ng demo.html sa puntong ito:

Hakbang 2

Ngayon na mayroon kaming mga DIV sa lugar, maaari naming ilagay at lumikha ng nabigasyon para sa pahina. Tulad ng iyong nahulaan, gagamitin namin ang isang hindi nakaayos na listahan <ul> upang itigil ang mga link at ang mga ID ng DIV bilang mga target para sa mga link na ito. Gayundin, idaragdag namin ang klase na naglalaman ng lahat ng "mga pahina" ng DIV. Ang klase na ito ay makakatulong sa amin na madaling hanapin sa mga DIV na ito kapag nilikha namin ang aming script. Kaya, narito ang dapat mong magkaroon ngayon:

Tandaan: Ang titik (key) sa loob ng panaklong ay ang key na gagamitin namin mamaya bilang nabigasyon para sa aming pahina.

Hakbang 3

Ang istraktura ng aming test page ay kumpleto na ngayon ngunit kulang sa magandang paningin. Kaya, magdagdag ng ilang CSS at jazz ito. Ang isang bagay na dapat tandaan bago namin simulan ang estilo ay ang aming pahina ay dapat magmukhang mabuti kahit na ang JavaScript ay hindi nakasindi. Ang mga script, ayon sa palagay ko, ay dapat palaging gagamitin bilang isang karagdagan sa mga gumagamit na may JavaScript na nakasindi ngunit hindi dapat magpalipat-lipat sa mga hindi. Kami ay mga taga-disenyo ng web/taga-gawa pagkatapos ng lahat, at pinapahalagahan namin ang tungkol sa kakayahang magamit, tama?

Maaari mong makita ang hitsura na gusto nating makuha sa screenshot sa itaas. Ito ay simple at gumagamit ng ilang mga maganda, naka-bold na kulay upang bigyang pansin ang iba't ibang mga seksyon. Kaya narito ang aming CSS:

Tandaan: Nagdagdag ako ng ilang mga panuntunan sa paglilinaw sa sarili upang mahanap upang magtrabaho sa paligid ng kakulangan ng taas dahil sa mga panloob na mga elemento na lumulutang. Sa ibang salita, ang mga panuntunan sa margin mula sa itaas na lalagyan ng lalagyan ay magkakaroon ng tamang epekto sa nabigasyon <ul>.

Hakbang 5

Sa puntong ito sa pagtuturo, dapat kang magkaroon ng pahina na naghahanap ng ganito:

Test Page Preview

Ito ay isang umaandar na pahina at ito ay gumagana ng maayos nang hindi nangangailangan ng JavaScript na nasindi. Gayunpaman, tulad ng sinabi ko dati, magbigay ng kaunting karagdagan sa mga gumagamit na may JavaScript na nakasindi sa kanilang mga browser. Gagawin namin ito sa dalawang hakbang. Una, lilikha kami ng dalawang mga kagamitan na itago at ipapakita ang mga pahina nang naaangkop. At pangalawa, magdaragdag kami ng ilang mga koda upang matukoy ang mga key na pinindot ng gumagamit. Lumikha ngayon ng isang datos na tinatawag na keypress_nav.js at makapagtrabaho na sa aming mga pag-andar.

Hakbang 6

Kailangan namin ang dalawang pag-andar para sa aming script upang gumana tulad ng ninanais. Ang isa sa mga kagamitan ay tatawagan kapag pinindot ng gimagamit ang isa sa aming mga paunang natukoy na mga nabogasyong key (Ang mga titik sa panaklong mula sa Hakbang 2) at itatago ang lahat ng iba pang mga lalagyan na nagpapakita lamang ng DIV na nauugnay sa key na ito. Ito ang hitsura ng aming unang pag-andar:

Ngayon, ang aming ikalawang kagamitan ay magkakaroon ng isang hanay ng mga link at nakalagay ang mga ito sa pagpindot sa target na kagamitan. Sa ibang salita, ang pag-gamit ay makakakuha ng aming mga link sa nabigasyon, kunin ang katangian ng "href" at ipakita ang nararapat na DIV sa pagpindot dito. Kaya, narito ang hitsura ng ikalawang kagamitan:

Hakbang 7

Ngayon na may koda na ang aming mga pag-andar, kailangan naming tawagan ang mga ito nang naaangkop kapag umaandar na ang pahina. Ang unang bagay na kailangan naming gawin ay itago ang lahat ng mga elemento na may klase na lalagyan na may pagbubukod sa DIV na may ID sa bahay. Susunod, kailangan naming tawagan ang kagamitan na showViaLink() sa mga link sa loob ng aming nabigasyon <ul> bilang panukat nito. Huling ngunit importante, kailangan naming makinig para sa gumagamit ng keypress at tawagan ang showViaPress() na kagamitan na may nararapat na ID bilang panukat nito. Ito ay maaaring maganap sa pamamagitan ng paggamit ng isang lumilipat sa key na pinindot.

Ang pihitan ay magkakaroon ng 5 mga kaso (isa para sa bawat link) at ang numero nito ay tumutugma sa numero ng ASCII para sa keypress. Halimbawa, kung pinindot ang pindutan na "a", gagamitin ng switch ang case 97. Narito ang kung ano ang koda:

Hakbang 8

Ngayon na mayroon kami ng lahat ng mga piraso ng kaalaman, maaari naming ilagay ito magkasama. Narito kung ano ang huling pag-ulit ng aming script ay dapat maging kamukha:

Demo

Tingnan ang script sa aksyon sa demo na pahina.
Ang paterno na ginamit sa pagtuturo na ito ay ginawa ng Taylor Satula.

TAPOS

Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.