62

ユーザーが画像をクリックするたびに、「宛先アドレス」を含む新しい Outlook メール テンプレートを開きたいと考えています。javascriptをロードするたびに、新しいメールテンプレートを開く必要があるhtmlページ(画像にリンク)でコードを返しました。しかし、機能は機能していません。私のコードで何が間違っているのか教えてください。

body onLoad="redirect()"

script language="JavaScript"

function redirect() 

      var email = "xyz@something.com"
      var mailto_link = 'mailto:' + email
      window = window.open(mailto_link, 'emailWindow')
      if (window && window.open && !window.closed)         
          window.close()
4

7 に答える 7

84

jQueryは必要ありません。また、新しいウィンドウを開く必要はありません。ブラウザに HTTP データを返さないプロトコル ( mailto:irc://magnet:ftp://(<- 実装方法によって異なります。通常、ブラウザには FTP クライアントが組み込まれています)) は、現在のコンテンツを失うことなく、同じウィンドウでクエリを実行できます。あなたの場合:

function redirect()
{
    window.location.href = "mailto:mail@example.org";
}
<body onload="javascript: redirect();">

または直接

<body onload="javascript: window.location.href='mailto:mail@example.org';">
于 2013-07-18T12:25:04.600 に答える
30

jsFiddle でコードを見つけてください。jQuery を使用して、リンクの href を変更します。その代わりに他のライブラリを使用できます。それはうまくいくはずです。

HTML

<a id="emailLnk" href="#">
    <img src="http://ssl.gstatic.com/gb/images/j_e6a6aca6.png">
</a>

JS

$(document).ready(function() {
    $("#emailLnk").attr('href',"mailto:xyz@something.com");
});​

アップデート

クリック イベント中にのみ ID がわかっている場合の別のコード サンプル

$(document).ready(function() {
    $("#emailLnk").click(function()
     {
         window.location.href = "mailto:xyz@something.com";
     });
});​
于 2012-04-16T11:01:15.897 に答える
4

simple を使用できますmailto。単純なマークアップについては以下を参照してください。

<a href="mailto:name@gmail.com">Click here to mail</a>

クリックすると、Outlook または設定した電子メール クライアントが開きます。

于 2014-01-30T03:10:08.570 に答える