アプリ版:「スタンプのみでお礼する」機能のリリースについて

HTML上でmailtoとwindow.close()の二つを同時に動作させることは可能でしょうか?

私が行おうとしている詳細は以下の通りです。

1.[メール]ボタンをクリックすると

2.別ウィンドウで規約への同意画面が開き、同ウィンドウ内の[同意する]をクリックするとこのウィンドウが閉じメーラーが開く。

といったページを作成しようとしています。
上記の”[同意する]をクリックするとウィンドウが閉じ、メーラーが開く”動作はIEでは動くのですが、FireFoxやMacのsafariではメーラーが立ち上がらない等で動作してくれません。

自分なりに作成したソースは以下の通りです。
この動作をFireFoxやMacのsafariでも動くようにするにはどのようにしたら良いでしょうか?
-------------
<a href="mailto:xxxx@xxxx?subjectxxxxxx>
<img src="images/agreement_btm.gif" width="110" height="30" onClick="JavaScript:window.close()">
</a>
-------------

何卒ご教示のほどよろしくお願いします。

A 回答 (2件)

こんにちは。


下記スクリプトはいかがでしょう?

私が試した時は、FireFox,safari共に
ウインドウを閉じた後でメーラーが立ち上がりました

■ ヘッド内の記述
<script type="text/javascript">
<!--
function MandC(){
window.opener.location.href="mailto:aa@aaa?subject=aaa";
window.close();
}
//-->
</script>

■ HTMLの記述
<a href="javascript:MandC();">
<img src="images/agreement_btm.gif" width="110" height="30" border="0">
</a>
    • good
    • 0
この回答へのお礼

ご教示ありがとうございました。

RH01さんに教えていただいたスクリプトで試してみたところ、
Windows用のブラウザ(IE、Firefox、NN、Opera)で無事に動作しました。本当にありがとうございました。

しかし、Macをお借りして再度Firefox,safariで試したところ、どちらのブラウザともウィンドウは閉じるがメーラーは立ち上がらないといった状況です。

RH01さんにてもsafariで試していただいた際は動作したとの事で、おそらく私のソースの記述でおかしな箇所があるのかもしれません。再度ソースの記述を見直してみます。

お礼日時:2006/05/18 14:06

画像に window.close が指定されていますから、リンクよりも先にその処理をブラウザが先に実行してしまい、


Firefox や Safari でメール画面が立ち上がらない状態になっているのだと思います。

#1 さんみたいにスクリプトを呼び出して一旦メール作成画面を開く処理を行ってからウインドウを閉じるのが正解ですね。
この方法は他にも応用できると思います。理屈を覚えておいては如何でしょうか?

[オフトピ]
FireFox のスペルは誤りなのだそうです(参考 URL)

参考URL:http://www.mozilla-japan.org/support/firefox/faq …
    • good
    • 0
この回答へのお礼

アドバイスをいただきありがとうございます。

java scriptはまだまだ勉強中の身の私です。
U-RIA_plusさんのおっしゃる通り、このような場をお借りして理屈を覚えていこうと思います。

ありがとうございました。

お礼日時:2006/05/18 14:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!