Неважећи код: Шта значи хреф = "#"?

click fraud protection

Када видите хреф = "#" у коду уживо на веб страници, то значи да је особа која је написала страницу погрешила. Никада не бисте требали видјети хреф = "#" у стварном изворном коду веб странице јер је # сам по себи заправо неваљан и бесмислен.

Кад год додате ЈаваСцрипт на везу без обзира на то или користите неупадљиви еквивалент, увек морате размотрити оне који из било којег разлога немају омогућен ЈаваСцрипт. Тхе ретурн фалсе на крају мог горњег примера спречава да се хреф заправо користи ако ЈаваСцрипт покреће, али хреф је и даље оно што ће се користити ако се из било којег разлога ЈаваСцрипт не покрене. Стога хреф мора да садржи стварну важећу вредност на основу места где желите да линк води људе који немају доступан ЈаваСцрипт. Пошто особа која је написала ЈаваСцрипт за вас не зна где желите да те особе одведу једноставно је уметнула # у свој код где требате заменити стварну адресу.

instagram viewer

# Је валидна у атрибуту хреф под условом да није једини знак у вредности. Тамо где # прате додатни знакови, ти додатни знакови су вредност атрибута ид другде у тренутна веб страница и страница ће прескочити како би се приказала ознака која садржи тај ид што је ближе врху прегледача виевпорт. На пример скочиће на

Знак # није валидан као последњи знак хреф-а, јер подразумева да желите да скочите на ид унутар странице, али вредност ид-а на који ћете скочити није наведена. Радња коју би прегледач требало да предузме у том случају није дефинисана, али већина ће се једноставно вратити на врх тренутне странице.

Па шта урадити ако је ЈаваСцрипт који желите приложити је такав да нема алтернативе за оне без ЈаваСцрипт-а? Па у том случају не желите оне без њих ЈаваСцрипт да бисте уопште видели везу јер ако је видљив њима неки од њих ће кликнути на њу, а ви немате ништа што желите да уради за њих, а то ће бити само збуњујуће. Рјешење је стога осигурати да је веза видљива само онима који имају омогућен ЈаваСцрипт, а начин на који је то додати је додавање везе на веб страницу помоћу ЈаваСцрипт-а.

Само где се додаје на веб страницу помоћу ЈаваСцрипт-а, да ли можете бити сигурни да ће сви који кликну на везу имају омогућен ЈаваСцрипт и прикупе, па ће се код доСометхинг () покренути и хреф = "#" ће бити игнорисан. Тада и само тада има смисла било шта оставити # на том месту у коду јер је потребан атрибут хреф како би неки прегледачи прихватили код као валидну везу и тамо где знате да ће је имати само људи који ће је видети ЈаваСцрипт Омогућено вам је да знате да нико никада неће завршити на месту на које хреф указује и тако може садржати било шта без икаквог значења и тако # је добра вредност као и свака и сигурно је боља од хреф = "јавасцрипт:" (што је конструкција која се никада не би смела користити без обзира да ли нешто прати двоточка или не).

instagram story viewer