2011-12-29 18 views
0

私はウェブサイトに電子メールアドレスを入れ、それを(少なくとも少しはJavaScriptコードを使用したくない)スパムから保護したいと考えています。 私の使っている方法は、HTMLにUnicode文字を印刷しているので、ボットは電子メールアドレスを認識しません。ユニコード文字が自分のHTMLに正しく表示されない

コード:

<a href="mailto:something&#x40hotmail&#x002Ecom">somethingk&#x40hotmail&#x002Ecom</a> 

出力:

[email protected]ˬom 

うまくいかないもの:02EC Unicode文字としてドット(002E)が表示されます。 &#x002Eのすぐ隣にテキストを表示しないと、ドットが表示されるように表示されます。

+0

すべての文字は、Unicodeです。 ** HTMLエンティティ**を意味すると思います。 –

+0

おそらく、私はその名前を聞いたことがありません。私はまだこれを試しています。私はまだそれについてたくさん読んでいない。情報をありがとう! – Hidde

+0

最新のボットは、HTMLエンティティをデコードするのに十分スマートです。ボットがHTMLページから電子メールを取得しないようにする唯一の方法は、電子メールをページに全く入れないことです。ユーザーがあなたのウェブサイトを通じてあなたに連絡をとるようにするには、ユーザーが記入してサーバーに提出して、ユーザーのためにサーバーに電子メールを送信させる代わりに、Webフォームを設定します。 –

答えて

2

HTMLエンティティの後にセミコロンを追加します。

<a href="mailto:something&#x40;hotmail&#x002E;com">somethingk&#x40;hotmail&#x002E;com</a> 

http://jsfiddle.net/EmvBc/1/

+0

スーパー!それは私が逃したものです:)ありがとう(私は私ができるとき答えとしてマークします) – Hidde

関連する問題