Neplatný kód: Čo znamená href = "#"?

click fraud protection

Keď uvidíte na webovej stránke href = "#" v živom kóde, znamená to, že osoba, ktorá stránku napísala, urobila chybu. V skutočnom zdrojovom kóde webovej stránky by ste nikdy nemali vidieť href = "#", pretože samotný znak # je v skutočnosti neplatný a nemá zmysel.

Kedykoľvek pripojíte JavaScript k odkazu, či už sa vám to páči alebo pomocou nenápadného ekvivalentu, vždy musíte zvážiť aj tých, ktorí z akéhokoľvek dôvodu nemajú povolený JavaScript. návrat nepravdivý na konci môjho vyššie uvedeného príkladu bráni tomu, aby sa href skutočne použil, ak JavaScript beží, ale href je stále to, čo sa použije, ak sa JavaScript z nejakého dôvodu nespustí. Href preto musí obsahovať skutočnú platnú hodnotu na základe toho, kde chcete, aby odkaz použil ľudí, ktorí nemajú k dispozícii JavaScript. Keďže osoba, ktorá pre vás napísala skript JavaScript, nevie, kam majú byť títo ľudia vzatí, vložila do svojho kódu #, kde musíte nahradiť skutočnú adresu.

instagram viewer

# Je platný v atribúte href za predpokladu, že to nie je jediný znak v hodnote. Ak za znakom # nasledujú ďalšie znaky, tieto ďalšie znaky sú hodnotou atribútu id na inom mieste v systéme aktuálna webová stránka a stránka skočí, aby sa značka obsahujúca toto ID zobrazila čo najbližšie k hornej časti prehľadávača výrez. Napríklad skočí na

# Znak nie je platný ako posledný znak href, pretože to znamená, že chcete skočiť na id na stránke, ale hodnota id, na ktorú sa má skočiť, nebola zadaná. Akcia, ktorú by mal prehliadač v tomto prípade vykonať, nie je definovaná, väčšina však jednoducho skočí späť na začiatok aktuálnej stránky.

Čo robiť, ak je JavaScript, ktorý chcete pripojiť, taký, že pre tých, ktorí nemajú JavaScript, neexistuje iná alternatíva? V tom prípade ich nechcete JavaScript Ak chcete vidieť odkaz vôbec, pretože ak je viditeľný pre nich, niektorí z nich naň kliknú a vy nemáte nič, čo by pre nich malo urobiť, a to bude iba mätúce. Riešením je preto zabezpečiť, aby bol odkaz viditeľný iba pre tých, ktorí majú povolený JavaScript, a spôsob, ako to urobiť, je pridať odkaz na webovú stránku pomocou JavaScriptu.

Iba v prípade, že je pridaný na webovú stránku pomocou JavaScriptu a môžete si byť istí, že každý, kto klikne na odkaz, bude mať povolený JavaScript, a preto sa spustí kód doSomething () a bude href = "#" ignorované. Až potom má zmysel nechať # na tomto mieste kódu, pretože je potrebný atribút href aby niektoré prehliadače akceptovali kód ako platný odkaz a ak viete, že tento odkaz budú mať iba ľudia, ktorí ho uvidia JavaScript aby ste tiež vedeli, že nikto sa preto nikdy nedostane na miesto, na ktoré poukazuje href, takže môže obsahovať všetko bez toho, aby na tom záležalo, a tak # je rovnako dobrá hodnota ako akákoľvek iná a je určite lepšia ako href = "javascript:" (čo je konštrukt, ktorý by sa nikdy nemal používať bez ohľadu na to, či čokoľvek po hrubom čreve nasleduje alebo nie).

instagram story viewer