Hallo Zusammen,
ich befürchte einen ganz banalen Fehler zu machen, sitze aber schon den 2. Abend vor dem Rechner, lese und recherchiere ... finde aber keine Lösung.
Ich möchte gerne via JavaScript Daten zu einem Online-Artikel erfassen ... den Autor und den Server.
Den Server kann ich auslesen:
var server = base_window.location.hostname.replace(/www./g, "");
Den Autoren nicht, daher möchte ich diesen im HTML-Dokument markieren und das Markierte auslesen:
var author=window.getSelection();
So weit, so gut. Jetzt kommt die Krux:
Fall 1: kein Autor ist angegeben (also ist auch nix markiert) -> ich möchte den Server als Autoren übernehmen
Fall 2: da Text markiert ist, ist ein Autor angegeben (weniger als 5 Zeichen), aber
Fall 2a: der Autor ist als Kürzel angegeben -> ich möchte dann gerne var author="''"+server+"''-Autor "+window.getSelection();
Fall 2b: der Autor ist mit vollständigem Namen angegeben -> ich möchte dann var author=window.getSelection();
Ich bin also bei folgender Überlegung gelandet:
if(window.getSelection()!='')
{if(window.getSelection().length>5)
{author=window.getSelection();}
else{author="''"+server+"''-Autor "+window.getSelection();}
;}
else{author=server;};
Trotz allen Überlegungen, dem ganzen Lesen und Recherchen, finde ich einfach nicht den Fehler.
Erstaunlicherweise reagiert das Skript immer wie folgt:
Fall 1: Wenn nix markiert ist, erhalte ich wie gewünscht: author=server
Aber: egal, ob wie lang der markierte Text ist, ich erhalte bei markiertem Text immer: ''server''-Autor author ... also genau das Verhalten, welches ich gern für eines Kürzels hätte ...
Erstaunlicherweise kann ich auch length>5 sogar length<5 machen und das Skript verhält sich identisch, was mich dazu bringt, dass ich irgend einen dämlichen Fehler gemacht habe.
Ich hoffe darauf, dass ich mein Anliegen verständlich rübergebracht habe und vllt. jemand eine Lösung oder einen Schubser für micht hat.
viele Grüße
Pietro