Neteisingas kodas: Ką reiškia href = "#"?

Kai tinklalapyje matote tiesioginį kodą href = "#", tai reiškia, kad puslapį parašęs asmuo padarė klaidą. Niekada neturėtumėte pamatyti href = "#" tikrame tinklalapio kode, nes # pats savaime yra neteisingas ir beprasmis.

Kai pridedate „JavaScript“ prie tokios pat nuorodos ar naudodamiesi netrukdančiu atitikmeniu, visada turite atsižvelgti ir į tuos, kurie dėl kokių nors priežasčių neįgalina „JavaScript“. grąžinti klaidingą mano aukščiau pateikto pavyzdžio pabaigoje neleidžia href faktiškai naudoti, jei „JavaScript“ vykdomas, bet vis tiek bus naudojamas href, jei dėl kokių nors priežasčių „JavaScript“ nebus paleistas. Todėl href turi būti faktinė galiojanti vertė, pagrįsta tuo, kur norite, kad nuoroda patektų žmonėms, kurie neturi „JavaScript“. Kadangi asmuo, parašęs jums „JavaScript“, nežino, kur norite, kad šie žmonės būtų paimti, jie ką tik įterpė kodą #, kur reikia pakeisti tikrąjį adresą.

instagram viewer

„#“ Galioja „href“ atribute, jei jis nėra vienintelis vertės simbolis. Kai po # eina papildomi simboliai, tie papildomi simboliai yra ID atributo reikšmė kitur dabartiniame tinklalapyje ir puslapyje bus parodyta ta žyma, kurioje yra tas ID, kuo arčiau naršyklės viršaus peržiūros sritis. Pavyzdžiui pereis į

# Simbolis negalioja kaip paskutinis href simbolis, nes tai reiškia, kad norite pereiti prie ID puslapyje, tačiau nenurodyta ID vertė, į kurią norite pereiti. Veiksmas, kurį tokiu atveju turėtų atlikti naršyklė, nėra apibrėžtas, tačiau dažniausiai jis paprasčiausiai grįš į dabartinio puslapio viršuje.

Taigi, ką daryti, jei norima pridėti „JavaScript“ yra tokia, kad tiems, kurie neturi „JavaScript“, nėra jokios alternatyvos? Na, tokiu atveju tu nenori tų „JavaScript“ jei norite iš viso pamatyti nuorodą, nes jei kai kurie iš jų ją matys, kai kurie iš jų ją spustelės, ir jūs neturite nieko, ką norite, kad jie padarytų. Tai tiesiog painioja. Todėl sprendimas yra užtikrinti, kad nuoroda būtų matoma tik tiems, kuriems įjungta „JavaScript“, ir būdas tai padaryti yra pridėti nuorodą į tinklalapį naudojant „JavaScript“.

Tik kur yra įtrauktas į tinklalapį naudojant „JavaScript“. Ar galite būti tikri, kad visi spustelėję nuorodą tai padarys įgalinkite „JavaScript“ ir „tat“, todėl bus paleistas „doSomething ()“ kodas ir bus href = "#" ignoravo. Tik tada nėra prasmės palikti kodą toje kodo vietoje, nes būtinas atributas href tam, kad kai kurios naršyklės priimtų kodą kaip galiojančią nuorodą ir iš kur žinote, kad vieninteliai žmonės, matantys šią nuorodą, turės „JavaScript“ įgalinę jūs taip pat žinote, kad todėl niekas niekada nebus nuvežtas į vietą, į kurią nurodo href, taigi joje gali būti bet kas, nieko nesvarbi ir taip # vertė yra tokia pat gera, kaip ir bet kuri, ir tikrai yra geresnė už href = "javascript:" (tai yra konstruktas, kuris niekada neturėtų būti naudojamas nepaisant to, ar kažkas seka dvitaškį, ar ne).

instagram story viewer