Mam ciąg dla tytułu i ciąg dla linku. Nie jestem pewien, jak połączyć te dwa elementy, aby utworzyć łącze na stronie za pomocą JavaScript. Każda pomoc jest mile widziana.
EDIT1: Dodanie więcej szczegółów do pytania. Powodem, dla którego próbuję to rozgryźć, jest to, że mam kanał RSS oraz listę tytułów i adresów URL. Chciałbym połączyć tytuły z adresem URL, aby strona była użyteczna.
EDIT2: Używam jQuery, ale jestem zupełnie nowy i nie wiedziałem, że może to pomóc w tej sytuacji.
Odpowiedzi:
źródło
Z JavaScriptem
lub, jak sugeruje @travis :
Dzięki JQuery
We wszystkich powyższych przykładach możesz dołączyć kotwicę do dowolnego elementu, nie tylko do „treści”, i
desiredLink
jest to zmienna, która zawiera adres, na który wskazuje element kotwicy, idesiredText
jest zmienną, która przechowuje tekst, który będzie wyświetlany w element kotwicy.źródło
document.getElementsByTagName('body')[0].innerHTML += desiredText.link(desiredLink);
+
) i.innerHTML
podczas budowania HTML. Z jQuery.attr("href", desiredLink)
i.text(desiredText)
właśnie tego chcesz.Utwórz linki za pomocą JavaScript:
LUB
LUB
źródło
Jest kilka sposobów:
Jeśli chcesz używać surowego JavaScript (bez pomocnika, takiego jak JQuery), możesz zrobić coś takiego:
Inną metodą jest wpisanie linku bezpośrednio w dokumencie:
źródło
Obiekt „Anchor” ma własne * (dziedziczone) * właściwości służące do ustawiania łącza, czyli jego tekstu. Więc po prostu ich używaj. .setAttribute jest bardziej ogólny, ale normalnie go nie potrzebujesz.
a.title ="Blah"
zrobi to samo i jest bardziej jasne! Cóż, sytuacja, która będzie wymagać .setAttribute, jest taka:var myAttrib = "title"; a.setAttribute( myAttrib , "Blah")
Pozostaw protokół otwarty. Zamiast http: //example.com/path rozważ użycie po prostu //example.com/path. Sprawdź, czy do witryny example.com można uzyskać dostęp przez http: i https: ale 95% witryn będzie działać na obu.
OffTopic: To nie jest zbyt istotne w tworzeniu linków w JS, ale może dobrze wiedzieć: Cóż, czasami, tak jak w konsoli programisty Chromes, której możesz użyć
$("body")
zamiastdocument.querySelector("body")
A,``_$ = document.querySelector
uhonoruje '' twoje wysiłkibłędem Illegal invocation przy pierwszym użyciu. Dzieje się tak, ponieważ przypisanie po prostu „pobiera” .querySelector (odniesienie do metody klasy ). Z.bind(...
tym również zaangażujesz kontekst (tutaj jestdocument
) i otrzymaszmetodę obiektową , która będzie działać tak, jak można się tego spodziewać.źródło
Dynamicznie utwórz hiperłącze za pomocą surowego JavaScript:
źródło
Wklej to w środku:
<A HREF = "index.html">Click here</A>
źródło