Der Martin: Mailto + Title

Beitrag lesen

Hi Mario,

das klappt wohl so noch nicht. Du hast jetzt offensichtlich Bausteine gesammelt, aber dir fehlt der Überblick, wie man sie zusammensetzt.

var == document.getElementsByTagName("title")[0].text;

Da sind zwei Fehler drin, und das Ganze ist außerdem seeehr umständlich gemacht.
Fehler 1: "var" ist ein reserviertes Schlüsselwort. So darf keine Variable heißen.
Fehler 2: "==" ist ein Vergleichsoperator, keine Zuweisung. Für eine Zuweisung ist ein *einzelnes* Gleichheitsszeichen "=" zuständig.
Und umständlich? Naja, man kann auch von Stuttgart nach München über Mailand fahren. *g* Um nur an den Dokumententitel zu kommen, muss man nicht gleich große Geschütze wie getElementsByXXX auspacken, eine einfache Abfrage von document.title genügt.

<a href="mailto:bla@blabla.de%20?Subject=Hallo" + var>Bla</a>

Nein. Wenn du den Link variabel haben möchtest, musst du ihn *komplett* mit JS ausgeben. Um HTML-Code oder Text direkt an der aktuellen Position ins Dokument zu setzen, gibt es die Methode document.write(). Davon abgesehen: Was hat das Leerzeichen zwischen der Mailadresse und dem ersten Parameter zu suchen? Weg damit!

Fassen wir also zusammen:

<script type="text/javascript>
document.write('<a href="mailto:user@example.org?subject=' + document.title + '">Linktext</a>');
</script>

Damit die Besucher ohne JS wenigstens auch eine Chance haben, setzen wir einen <noscript> Block hinterher:

<noscript>
<a href="mailto:user@example.org?subject=Website-Kommentar">Linktext</a>
</noscript>

kann mir da noch jemand auf die Sprünge helfen?

War doch gar nicht so schwer, oder?
Übrigens solltest du nicht vergessen, dass beileibe nicht alle Mailclients den Parameter "subject=" auch übernehmen. Es kann durchaus sein, dass das ignoriert wird. Dann wärst du so weit wie zuvor. ;-)
So long,

Martin

--
Lieber blau machen, als sich schwarz ärgern.