MailtoリンクはChromeでは何もせず、Firefoxでは機能しますか?


149

mailto私たちのウェブサイトに埋め込んでいるリンクは、Firefoxでは機能しますが、Chromeでは何もできません。

ここに簡単な例:http : //jsfiddle.net/wAPNH/

<a href='mailto:test@test.com'>hi this is a test</a>

Chromeでメールリンクを有効にするために何か特別なことをする必要がありますか?


私には問題なく動作しますが、Chromeの拡張機能や干渉するものはありますか?
Ryan Kempt 2013

mailtoリンクをクリックすると、FFでどのアプリケーションが開きますか?
mohkhan 2013

1
私はChrome 28で試してみましたが、JSfiddleリンクがうまく機能しました(Macで実行し、mail.appをうまく開いた)。
sasbury 2013

私はそうすることmailto:test%40test.comがより一貫していることを発見しました
プロQ

回答:


128

これはブラウザ設定固有です。つまり、ユーザーのブラウザ設定に応じて異なる動作をします。ユーザーがどのように変更することができますmailto:リンクは訪問してクロムに振る舞いますchrome://settings/handlersか、Chrome Settings->Content Settings->Manage Handlers...

「メール」がそのページにリストされていない場合は、続行方法についてこの回答を参照してください。


7
すばらしい、デフォルトの動作は何ですか?
Crashalot 2013

8
デフォルトでは、コンピュータ上でメールクライアントを実行することです。私は仕事でそれがサンダーバードを実行することを知っています。Outlookがインストールされている場合、Outlookが実行される可能性があります。個人的には、デフォルトではGmailが実行されなかったため、そのように設定する必要がありました。
kennypu

2
@Crashalotいいえ。mailtoリンクはmailtoリンクです
kennypu

48
chrome:// settings / handlersを開くと、ハンドラーを追加するオプションのない空のボックスが表示されます。ここではChromeがひどく壊れているようです:mailtoリンクに応答して、設定されているメーラー(Thunderbird)を開けません。
Peter Flynn

3
@PeterFlynnは、chromeがコンピュータにインストールされているデフォルトのメールクライアントを実行しようとするようです。thunderbirdがデフォルトのメールクライアントとして設定されていることを確認します。これを行う方法については、このリンクを参照してください:kb.mozillazine.org/Default_mail_client#Windows
kennypu

107

これは、chromeがmailtoを別の方法で処理するためです。に移動してchrome://settings/handlers、デフォルトのハンドラーであることを確認できます。あなたの場合、それはなしになります(すなわち、リストされません)。次にgmail.comにアクセスします。ブックマークボタンの横にあるボタンをクリックすると、このようなものが表示されます。

Chromeでmailtoを設定する

Gmail経由ですべてのメールリンクを開きたい場合は、[Gmailを使用]を設定します。mailtoボタンをクリックすると、Chromeが自動的にGmailで開きます。


1
これは何のハンドラはchanged-する設定でありませんでした「...許可Gmailの」最初の来場のGmailやクリックせずに、私のために働いた
chrismarx

1
Gmail?Gmailはこれとどのように関係していますか?Chromeの新しいインスタンスを開くのではなく、ChromeでThunderbirdを開くようにしたい。
Peter Flynn

ハンドラーを設定するには、chrome:// settings / handlersに移動します。
Rajesh Hegde 2015年

1
@ Gi1ber7 chrome:// settings / handlersに移動して、mailto設定を変更できます。
Rajesh Hegde 2017

1
ハンドラはありません。wth
ボリス・ガフロフ

42

私の場合、ChromeWindows 10でMAILTOプロトコルとして関連付けられていました

「デフォルトのプログラム」「ファイルの種類またはプロトコルをプログラムに関連付けるを使用して、関連付けをOutlookに変更しました

MAILTOはリストのかなり下にあります。このスクリーンショットが役立つ場合があります。

ここに画像の説明を入力してください


わかりましたが、アプリではなく特定のWebサイトで開く場合はどうでしょうか。
カイルデラニー

2
Windows 10を使用して、右側のリストに「mailto」プロトコルチェックボックスを表示する前に、左側のリストでOutlookを選択する必要がありました。
トムマクドナルド

15

私もこの問題を経験し、結局それが私のリンクがiframe内にあり、私のWebアプリがhttpsを使用しているという事実を突き止めました。これが原因でChromeがブロックしていました(Chromeはiframeの外部にある他のmailtoリンクを開きます)。

フレームクロム(オーバーHTTPS)内で動作していないのmailtoリンク、kendsnyderは単に変更言及しました

<a href="mailto:...">email</a>

<a target="_top" href="mailto:...">email</a>

出来上がり、問題は解決しました。そのmailtoリンクはすべてのブラウザーで機能するようになりました。


使用target=_parent"してもうまくいくかどうか知りたいです。良い発見。
テルマート2015年

ありがとう。よく働きました。@Termato、それが「トップ」フレームであればおそらく機能するでしょう。target="_top"JavaScriptを使用する場合のみ:window.top.location.href = 'mailto:...'
Neil Monroe

今ターゲット=「_トップ」も、私は「_parent」で試してみました:(任意の代替回避策は動作していないと、それはあまりにも機能していません。。
ビジェイ・ミシュラ

target="_top"Google Chromeのiframe内で私のために働きました
John Doherty 2017

@Basjは私の(最新の)Chromeで正常に動作します。コンピュータにデフォルトのメールクライアントがありますか?
Thomas Ayoub

13

gmailにmailtoプロトコルのサービスハンドラーのインストールを許可する必要があります。

1)Gmailに移動

2)アドレスバーの最後にある小さな菱形アイコンをクリックします(スクリーンショット)

3)楽しむ

ここに画像の説明を入力してください


私は、このようなAの事見ない
ボリスGafurov

@BorisGafurovはChromeのバージョンが最新ですか?
jj_

7

あなたはに行く試みることができるchrome://settings/handlersため、設定値mailto:none代わりに、gmail


7
ここでも同じです:chrome 27には、mailto定義のハンドラーや、それ以外の何かのためのハンドラーがありません。FFでは手動でも追加する必要がありました。
Robert Hoffmann

こっちも一緒。Chromeは基本的にmailtoリンクに関して壊れています
Peter Flynn

6

プロトコルハンドラーが空だったのでうまくいった修正

https://productforums.google.com/forum/#!topic/gmail/CQMCGRvyhCM

要約するには、redfish43の返信を参照してください

mailtoの場合:-Gmailにログインしていて、アクティブなウィンドウがGmailのメインページであることを確認します(または何も起こりません)。-これをコピーしてアドレスバーに貼り付けます。

javascript:navigator.registerProtocolHandler("mailto","https://mail.google.com/mail/?extsrc=mailto&url=%s","Gmail")

必要に応じて、javascript:を再び前面に追加します。貼り付けたときに、おそらくコロンを含むすべての前がChromeでトリミングされているためです。次にEnterキーを押します。

ポップアップウィンドウが開いたら、[許可]をクリックします


outlook.comについてはどうですか?
カイルデラニー

3

私も同じ問題を抱えていました。問題は、奇妙な理由により、Chromeが自分をmailto:リンクを開くデフォルトのツールにしたことです。解決策は、メールクライアントをデフォルトのアプリとして配置して開くことです。方法:http : //windows.microsoft.com/en-nz/windows/change-default-programs#1TC=windows-7

幸運を


おかげで、これは有用だった、私はここに来た前に失敗したすべての上位ランクのものを試してみました。:(
ボリスGafurov

2

この回答は、自分に役立つGoogleフォーラムで見つかりました。脚注では「googleapps.exe」について言及しています-私はこれを持っていませんが、まだ機能しています。以下の手順に従ってください。ただし、レジストリを変更する前に、すべてのアプリケーションを終了してください。また、機能しない場合に備えて、既存の値を保存しました。


検索バーに「run」と入力し、次に「regedit」と入力して、次の場所に移動します。

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\mailto\shell\open\command\ 

「(デフォルト)」を編集(ダブルクリック)して、次のようにします。

"C:\Program Files (x86)\Google\Google Apps\googleapps.exe" --domain= --mailto.google.com="%1" 

それでおしまい!保存して閉じると、美しく機能するはずです。

この方法を使用すると、GMail Notifierをダウンロードする必要がなくなります。GTalkを使用している場合は、GMail Notifierを使用する必要はありません。なぜGoogleがこの問題を簡単に解決できないのかわかりません。GoogleAppsはWindows 7で十分にテストされていないようですが、同じタグで動作することは明らかです。

注:このソリューションの唯一のことは、ご使用のマシンにgoogleapps.exeファイルが必要であることです。私は彼らのサイトから私の無料のGooglePackでそれを手に入れたことを信じています。ダウンロードの方法を探してネットを検索してみましたが、奇妙なことに、今は企業向けにしか予約されていないようで、グーグルアップデーターを使用してネットをストリーミングしているすべての人から、ダウンロードリンクがありません。とにかく頑張ってね!


1

別のソリューションは、すべてのブラウザーで普遍的に解釈される独自のカスタムポップアップ/フォーム/ユーザーコントロールを実装することです。

これは、「mailto」の追加機能を利用しないことを認めています。それはすべて、あなたが取り組んでいる可用性の順守に依存します。私自身にとって残念なことに、mailtoはデフォルトで「クライアントに不便をかける」ことなく全員が利用できる必要がありました。

最終的にあなたの決定。


1

のMacOSまた、アプリケーションが関連付けられたデフォルトの電子メールアプリケーション/として選択されているMail.appの設定、確認してくださいmailto:リンクを:

アプリの代わりにGmailでリンクを開くことができるGmailでその通知をクリックしたことがあり、Chromeハンドラーをリセットした後、Mail.app設定で手動で編集する必要があります。

スクリーンショット


0

通常<a href="mailto:hi@hi.com"></a>は機能するはずですが、デフォルトのメールプログラムがコンピュータに設定されている必要があります。例として、私はUbuntu 14.04を使用しており、デフォルトの電子メールはthunderbirdであり、正常に機能します。


0

「Chromeを使用して、問題を招く」-匿名。(単なる記号参照)

まあ、Chromeは多くのデフォルトのセキュリティ対応ユーティリティで有名であり、それが問題の原因です。

ただし、これは、「デフォルトのメールクライアントを設定する」(デフォルトのメールクライアントが設定されていないため)、または「chrome:// settings / handlers」の下にデフォルトのハンドラーを設定する(デフォルトでは、「無視する ')。


1
はい、これは最も頻度の高い理由の1つです。そして、提案されたソリューションは確かに機能するはずです。

0

私はこのコードを使用して問題を解決しました:

    
<button onclick="email()">Contact me !</button>	

<script>
function email() {
    var str = window.open('mailto:aaaaaa@aaaaaa.net', '_blank');
}
</script>

それは私にとって魅力のように働いた!


-3

こんな風にも使えます

<a href="javascript:void(0);" onclick="javascript:window.location.href='mailto:info@example.com'; return false;">info@example.com</a>

これがChromeの問題を解決する最良の方法だと思います。

ありがとう。


の「o」ではなく「0」void()。これは私にはうまく機能しないようでした。追加する必要がある何か他にありますか?
Rob

-7

これを確認してください:

これはChromeとすべてのブラウザで機能します。

<a href="mailto:test.test@gmail.com">Test</a>

うまくやってみてください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.