3

これが少し大雑把であることは承知していますが、質問は、スパム ボットからメールを隠すにはどうすればよいかということです。

各方法の長所と短所は何ですか?

4

1 に答える 1

13

あいまいな JavaScript

方法

私はこれをよく見ます。

My email is <strong id="secret1"></strong>
var parts = ["secret", "my", 64, "il.com", "gma"];
document.getElementById("secret1").textContent = parts[1] + parts[0] + String.fromCharCode(parts[2]) + parts[4] + parts[3];

フィドル

長所

これはプレーン テキストより優れており、@文字はページのどこにも表示されません。

短所

JavaScript を実行し、html ソースの代わりに動的ページを表示するヘッドレス ブラウザーが登場しました。


::前後

方法

CSS で擬似セレクターを使用すると、要素の後にコンテンツを表示できます。DOM に追加されることはないため、純粋に視覚的です。

My email is <strong id="secret2">mysecret</strong>
#secret2::after {
    content: '@gmail.com';
}

フィドル

長所

::afterの代わりに使用することを覚えていれば:after、IE<9 ユーザーからのメールを防ぐことができます。

短所

ユーザーは疑似要素のコンテンツを選択できません。上記の例では、メールを送信する際に「@gmail.com」と入力する必要があります。


お問い合わせフォーム

方法

お問い合わせフォームを提供し、サーバー側のスクリプトを使用してメールを送信します。

<h1>Contact Us</h1>

<form action="contact.php" method="POST">
    <label for="subject">Subject</label>
    <input type="text" name="subject">
    <label for="email">Email</label>
    <input type="email" name="email">
    <label for="body">Message</label>
    <textarea name="body" cols="30" rows="10"></textarea>
    <input type="submit">
</form>

フィドル

長所

  • 返信することを決定しない限り、メールアドレスを表示することはありません
  • フォームをレート制限し、キャプチャを提供できます
  • IPアドレスをログに記録し、スパムを送信するものをブロックできます
  • ユーザーに便利なオプションを提供できます (複数選択の「これについて」など)。
  • キャプチャを使用できます
  • メッセージをユーザー アカウントに関連付けて、以前の会話のアーカイブと共に、サイトの更新を提供できます。
  • より迅速な技術サポートのためにブラウザー情報 (ユーザーエージェントなど) をログに記録できます

短所

  • それは非個人的な感じ
  • サーバー側の言語が必要です
  • 実装に時間がかかる
于 2013-08-25T13:42:17.970 に答える