Vidokezo vya zana vinahisi kama shida ndogo zaidi ya UI unayoweza kuwa nayo. Wao ni vidogo na kawaida hufichwa. Mtu anapouliza jinsi ya kuunda moja, jibu la jadi karibu kila wakati hurudi kwa kutumia maktaba fulani ya JavaScript. Na kwa muda mrefu, huo ulikuwa ushauri wa busara. Niliifuata, pia. Juu ya uso, ncha ya zana ni rahisi. Elea au uzingatia kipengele, onyesha kisanduku kidogo kilicho na maandishi, kisha uifiche mtumiaji anapohama. Lakini mara tu unaposafirisha moja kwa watumiaji halisi, kingo huanza kuonekana. Watumiaji wa kibodi Weka kwenye kichochezi, lakini usione kidokezo cha zana. Visoma skrini vinatangaza mara mbili, au la kabisa. Ncha ya zana humeta unaposogeza kipanya haraka sana. Inapishana maudhui kwenye skrini ndogo. Kubonyeza Esc hakufungi. Kuzingatia hupotea. Baada ya muda, msimbo wangu wa kidokezo ulikua kitu ambacho sikutaka kumiliki tena. Wasikilizaji wa tukio walikusanyika. Kuelea na umakini ilibidi kushughulikiwa kando. Mibofyo ya nje ilihitaji visa maalum. Sifa za ARIA zilibidi kusawazishwa kwa mkono. Kila kurekebisha ndogo aliongeza safu nyingine ya mantiki. Maktaba zilisaidia, lakini pia zilikuwa kama visanduku vyeusi ambavyo nilifanya kazi karibu badala ya kuelewa kikamilifu kile kilichokuwa kikiendelea nyuma ya pazia. Hiyo ndiyo ilinisukuma kutazama API mpya ya Popover. Nilitaka kuona kitakachotokea ikiwa ningeunda upya kidokezo kimoja kwa kutumia modeli asilia ya kivinjari bila usaidizi wa maktaba. Tunapoanza, ni muhimu kuzingatia kwamba, kama ilivyo kwa kipengele chochote kipya, kuna baadhi ya mambo ambayo bado yanatatuliwa. Hiyo ilisema, kwa sasa inafurahia usaidizi mkubwa wa kivinjari, ingawa kuna vipande kadhaa kwa API ya jumla ambayo inabadilika. Inastahili kuweka jicho kwenye Caniuse wakati huo huo. Kidokezo cha "Kale". Kabla ya API ya Popover, kutumia maktaba ya vidokezo haikuwa njia ya mkato. Ilikuwa chaguo-msingi. Vivinjari havikuwa na dhana asilia ya kidokezo ambacho kilifanya kazi kwenye kipanya, kibodi na teknolojia ya usaidizi. Ikiwa ulijali juu ya usahihi, chaguo lako pekee lilikuwa kutumia maktaba, na ndivyo nilivyofanya. Katika kiwango cha juu, muundo ulikuwa sawa kila wakati: kipengee cha trigger, kipengee cha vidokezo kilichofichwa, na JavaScript ya kuratibu hizo mbili.

Maktaba ilishughulikia uunganisho wa nyaya ambao uliruhusu kipengee kuonekana kwenye kuelea au kulenga, kujificha kwenye ukungu au kuondoka kwa kipanya, na kuweka upya/kubadilisha ukubwa kwenye kusogeza.

Baada ya muda, ncha ya zana inaweza kuwa dhaifu. Mabadiliko madogo yalibeba hatari. Marekebisho madogo yalisababisha kurudi nyuma. Mbaya zaidi, kuongeza vidokezo vipya kulirithi ugumu sawa. Mambo yalifanya kazi kitaalam, lakini hayakuwahi kuhisi kuwa yametulia au kukamilika. Hiyo ndiyo ilikuwa hali ya mambo nilipoamua kuunda tena kidokezo kwa kutumia API asili ya Popover ya kivinjari. Wakati Nilijaribu API ya Popover Sikubadilika kutumia API ya Popover kwa sababu nilitaka kujaribu kitu kipya. Nilibadilisha kwa sababu nilikuwa nimechoka kudumisha tabia ya vidokezo ambayo niliamini kuwa kivinjari kinapaswa kuwa tayari kimeelewa. Nilikuwa na shaka mwanzoni. API nyingi mpya za wavuti huahidi urahisi, lakini bado zinahitaji gundi, ushughulikiaji wa kingo, au mantiki mbadala ambayo huunda tena kwa utulivu ugumu ule ule uliokuwa ukijaribu kutoroka. Kwa hivyo, nilijaribu API ya Popover kwa njia ndogo iwezekanavyo. Hii ndio ilionekana:

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free