2017-06-30 8 views
0

Ich habe nichts getan. Aber ich frage gerne, ob ich dieses Feature überhaupt erreichen kann.Fügen Sie einen Link zu einem Anker-Tag mit JavaScript

Ich habe eine Schleife in meinem Wordpress-Seite, dessen Ausgang so etwas wie dieses:

<div class="dummy"> 
    <a href="http://google.com">Text Here</a> 
    <a href="http://google.com">Text Here</a> 
    <a href="http://google.com">Text Here</a> 
    <a href="http://google.com">Text Here</a> 
    <a href="http://google.com">Text Here</a> 
</div> 

Hier können Sie alle die URL sind die gleichen bemerken.

Also was ich hier wissen möchte, ist, wenn es eine Möglichkeit gibt, kann ich das 3. oder 4. Anker-Tag auf eine andere URL wie http://facebook.com mit Javascript umleiten?

Wenn es eine solche Möglichkeit gibt, lass es mich wissen. Ich bin neugierig darauf.

Vielen Dank im Voraus.

Antwort

0

Wählen Sie einfach den a Tag, das Sie ändern mögen, mit welcher Methode am meisten Sinn macht, und buchstäblich nur element.href = "www.example.com"

var first = document.getElementById("first"); 
 
first.href = "http://stackoverflow.com"
<div class="dummy"> 
 
    <a id="first" href="http://google.com">Text Here</a> 
 
    <a href="http://google.com">Text Here</a> 
 
    <a href="http://google.com">Text Here</a> 
 
    <a href="http://google.com">Text Here</a> 
 
    <a href="http://google.com">Text Here</a> 
 
</div>

+0

Hallo Adam, Vielen Dank für Ihre Antwort. Der vollständige Code stammt aus einer PHP-Schleife. Es ist also keine Möglichkeit, einem Anker-Tag eine spezielle Klasse hinzuzufügen. –

+0

Ja, Sie müssen das "a" -Tag auf die Weise auswählen, die für Ihre Anwendung am sinnvollsten ist, ich habe es nur mit einer ID ausgewählt, zum Beispiel sake. Sie müssen das Tag auf eine dynamischere Art und Weise greifen, wahrscheinlich indem Sie alle Kinder von "Dummy" auswählen und sie durchschleifen, um jedes oder so etwas einzustellen. –

+0

Aber sobald Sie es haben, müssen Sie nur noch die Eigenschaft festlegen. –

1

id zu jedem Anker-Tag geben.

<div class="dummy"> 
    <a id="anchor_1" href="http://google.com">Text Here</a> 
    <a id="anchor_2" href="http://google.com">Text Here</a> 
    <a id="anchor_3" href="http://google.com">Text Here</a> 
    <a id="anchor_4" href="http://google.com">Text Here</a> 
    <a id="anchor_5" href="http://google.com">Text Here</a> 
</div> 

Dann folgenden JavaScript-Code verwenden, um gewünschtes Element auswählen und seine href Eigenschaft ändern.

<script> 
    document.getElementById("anchor_5").href = "http://www.facebook.com"; 
</script> 

EDIT

Wenn Ihre Website enthält nur diese Anker-Tags, dann können Sie alle Anker-Tags und dann die letzte auswählen (oder eine beliebige andere) mit Index.

Hier ist ein Beispielcode

var anchors = document.getElementsByTagName("a"); 
var lastAnchor = anchors[(anchors.length - 1)]; 

In einem anderen Fall, wenn Sie die Liste der Anker-Tags dieser besonderen div möchten. (Unter der Annahme, dass es nur eine div ist diese Klassennamen mit)

var ancestor = document.getElementsByClassName('dummy')[0]; 
var descendents = ancestor.getElementsByTagName('a'); 
descendents[4].href="http://facebook.com" 

Hoffnung, das hilft. Lass es mich wissen, wenn es ein Problem gibt.

Verwandte Themen