Hallo nochmal,
danke für Deine Hilfe.
Ich bin jetzt soweit -wie Du es geschrieben hast-...:
- Quell-Textknoten kürzen bis zur Link-Stelle
Jetzt habe ich jedoch das Problem, dass der anzuhängende Link nicht erscheint und eine JS-Fehlermeldung kommt ("Unerwarteter Aufruf oder Zugriff").
Hier ist mein Code:
----------------------------------------
<html>
<head>
</head>
<body>
<h1>Die Abwehr und Pirlo beschäftigen</h1>
Diese Bitte konnte Urs Siegenthaler Jogi Löw beim besten Willen nicht erfüllen. Dabei wollte der Assistent von Bundestrainer Klinsmann dem DFB-Chef-Analytiker nur einen einzigen Schwachpunkt im italienischen Team entlocken. "Es klingt hart", sagte Siegenthaler, "aber Italien hat wirklich eine komplette Elf, die kaum Fehler macht." Da stellt sich natürlich die Frage, wie man das Halbfinale gegen Italien (ab 20.45 Uhr im onSport Live-Ticker) überhaupt erfolgreich gestalten kann. Auch die T-Online Analyse bringt zum Vorschein, dass auf die deutsche Mannschaft ein extrem dicker Brocken wartet, der aber aber durchaus zu knacken ist.
<br><br>
<button onclick="scantext();">Click Me</button>
<script language="JavaScript">
<!--
function scantext() {
n = document.getElementsByTagName("body")[0];
keyword = "Team";
walk_dom(n,keyword);
function walk_dom(n,keyword) {
/*
1 Elementknoten
2 Attributknoten
3 Textknoten
4 Knoten für CDATA-Bereich
5 Knoten für Entity-Referenz
6 Knoten für Entity
7 Knoten für Verarbeitungsanweisung
8 Knoten für Kommentar
9 Dokument-Knoten
10 Dokumenttyp-Knoten
11 Dokumentfragment-Knoten
12 Knoten für Notation
*/
if (n.nodeType == 3 /*Node.TEXT_NODE*/)
{
var pos = n.data.search(keyword);
//var pnt = n.parentNode.tagName;
//if (pos > -1 && pnt != "A" && pnt != "IMG") {
if (pos > -1) {
txtreplace(n,keyword,pos);
}
}
else
{
var kids = n.childNodes;
for(var i = 0; i < kids.length; i++)
{
walk_dom(kids[i],keyword);
}
}
}
function txtreplace(n,keyword,pos) {
var endtext = n.cloneNode(true); // Textknoten kopieren (fuer Endtext nach HREF)
n.data = n.data.substr(0,pos); // Aktuellen (Ersten) Knoten kürzen bis vor das Keyword
endtext.data = endtext.data.substr( (pos + keyword.length) , endtext.data.length); // Endtextknoten kürzen ab dem Keyword bis Ende
// Link-Knoten erzeugen
var objLink = document.createElement("a");
objLink.setAttribute("href", "http://www.google.de");
objLink.appendChild(document.createTextNode(keyword));
n.appendChild(objLink);
//n.appendChild(endtext);
}
}
//-->
</script>
</body>
</html>
-----------------------------------------------
Bitte hilf mir doch nochmal :)
Danke + Gruß
juppinger