![](https://habrastorage.org/storage2/878/6a6/718/8786a6718d78ff23cd74f67fdfa94bef.png)
jQueryプラグインMailcheck (github) -事前に定義されたリスト(たとえば、最も人気のあるメールサービス)に従って、タイプミスがないかメールをチェックするクライアント側。
デモ | sorsaデモ (jsfiddle)
著者(Kicksend)の声明 (en)によると、このプラグインは登録中の電子メール確認の数を50%増やしました。
プラグインがキリル文字ドメインのタイプミスをチェックするには、ソートを編集します ( 行30 ):
var result = Kicksend.mailcheck.suggest(encodeURI(this.val()), opts.domains);
encodeURI(this.val())
を
this.val()
置き換えます(重要!エンコードはUTF-8でなければなりません)
私たちはチェックします:
![](https://habrastorage.org/storage2/afa/938/8d5/afa9388d51442e4fd852de916648a737.png)
非論理文のバリアント
プラグインは最大の共通部分文字列に対して検索アルゴリズムを使用します 。これは一般に、修正案 (デモを参照) にうまく対処しますが、次のような重要なケースがあります。
入力データ:
ドメイン:["ua.com"、 "ui.com"]
メール:user@uo.com
結論: user @ u a .com
![](https://habrastorage.org/storage2/dcb/ec0/104/dcbec0104ab351cfdae1d304ebd9a8c1.png)
habraisersがアルゴリズムを改善して、同様のタイプミスを正しく実現する方法を議論することをお勧めします。
( github issue#20 )