Farid: Was ist bei der Funktion falsch?

Hallo an allen,

ich habe eine simple Funktion zum E-Mail senden geschrieben, die ab IE 5.5 eine Fehlermeldung ausgibt. hier ist die Funktion:

function send_e_mail(feld)
{
    if (feld.value != "")
    {
      var adr = "mailto:" + feld.value;
      var win = window.open(adr,'_blank','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=1px,height=1px,top=5000,left=5000');
      win.close();
    }
    else
    {
      alert("Es ist keine E-Mail Adresse vorhanden!", feld);
    }
}

Bei win.close() bekomme ich eine Fehlermeldung und zwar:

null ist null(d.h.: das Objekt win existiert nicht).

wie kann ich die Funktion umschreiben, damit die ab IE 5.5 auch lauffähig bleibt.

Danke an Allen

  1. Moin Moin !

    var win = window.open(adr,'_blank','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=1px,height=1px,top=5000,left=5000');
          win.close();

    Du schließt das Fenster unmittelbar nach dem Öffnen. Blöde Idee. Warum willst Du einen Mailto-Link überhaupt in einem neuen Fenster öffnen? Ein stinknormaler Mailto-Link sollte im IE ohne verrenkungen den Standard-Mailer starten.

    Danke an Allen

    Wer ist Allen?

    Alexander

    --
    Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
    1. Hi,
      danke für die rasche Antwort.

      Ich benutze den dll von IE in einer c-Anwendung und ich muß das Fenster sofort schliessen, damit die c-Anwendung nachdem Absenden von E-Mail den Focus bekommt.

      Farid

      1. Moin Moin !

        Ich benutze den dll von IE in einer c-Anwendung und ich muß das Fenster sofort schliessen, damit die c-Anwendung nachdem Absenden von E-Mail den Focus bekommt.

        Wenn Du ohnein in C programmierst, benutze die Windows MAPI, damit kannst Du ohne IE Mails verschicken.

        Den Fokus kannst Du über andere Methoden besser setzen als dadurch, daß Du das IE-Popup wieder schließt.

        Alexander

        --
        Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
        Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
        1. Hi,

          den Quellcode vom c-Programm habe ich nicht, ich habe nur den exe-File. Weiss du warum der win.close() ab IE 5.5 nicht meher geht.

          Farid

          1. Moin Moin !

            den Quellcode vom c-Programm habe ich nicht, ich habe nur den exe-File.

            Dumm gelaufen.

            Weiss du warum der win.close() ab IE 5.5 nicht meher geht.

            Keine Ahnung. Dein Problem dürfte aber woanders liegen: [?t=43629&m=238095]

            Alexander

            --
            Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
            Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
  2. Hallo an allen,

    ich habe eine simple Funktion zum E-Mail senden geschrieben, die ab IE 5.5 eine Fehlermeldung ausgibt. hier ist die Funktion:

    function send_e_mail(feld)
    {
        if (feld.value != "")
        {
          var adr = "mailto:" + feld.value;
          var win = window.open(adr,'_blank','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=1px,height=1px,top=5000,left=5000');
          win.close();
        }

    Warum willst du denn ein neues Browserfenster öffnen.

    ein einfaches top.location.href = adr; tut es doch auch.

    struppi.

    P.S.: Das 'mailto:' in den wenigsten Fällen funktioniert ist dir bekannt.