Sådan ændrer du href for et hyperlink ved hjælp af jQuery
Hvordan kan du ændre href for et hyperlink ved hjælp af jQuery?
1228
3
Hvordan kan du ændre href for et hyperlink ved hjælp af jQuery?
Brug af
vil ændre href for alle hyperlinks til at pege på Google. Du ønsker dog sandsynligvis en noget mere raffineret selector. Hvis du f.eks. har en blanding af linkkilde (hyperlink) og linkmål (alias "anker") ankertags:
...Så ønsker du sandsynligvis ikke ved et uheld at tilføje
href
-attributter til dem. For en sikkerheds skyld kan vi derfor angive, at vores selector kun vil matche<a>
-tags med en eksisterendehref
-attribut:Selvfølgelig har du sikkert noget mere interessant i tankerne. Hvis du ønsker at matche et anker med et specifikt eksisterende
href
, kan du bruge noget som dette:Dette vil finde links, hvor
href
passer nøjagtigt til strengenhttp://www.google.com/
. En mere kompliceret opgave kan være at matche og derefter kun opdatere en del afhref
:Den første del udvælger kun links, hvor href starter med
https://stackoverflow.com
. Derefter defineres en funktion, der bruger et simpelt regulært udtryk til at erstatte denne del af URL'en med en ny. Bemærk den fleksibilitet dette giver dig - enhver form for ændring af linket kan foretages her.Brug metoden
attr
i dit opslag. Du kan udskifte enhver attribut med en ny værdi.Afhængigt af, om du vil ændre alle de identiske links til noget andet, eller om du kun vil have kontrol over dem i en bestemt sektion af siden eller hver enkelt af dem, kan du gøre en af følgende fremgangsmåder.
Ændre alle links til Google, så de peger på Google Maps:
Hvis du vil ændre links i et givet afsnit, skal du tilføje container div's klasse til selectoren. Dette eksempel vil ændre Google-linket i indholdet, men ikke i footeren:
Hvis du vil ændre individuelle links, uanset hvor de befinder sig i dokumentet, skal du tilføje et id til linket og derefter tilføje dette id til selectoren. Dette eksempel ændrer det andet Google-link i indholdet, men ikke det første link eller linket i sidefoden: