web-dev-qa-db-ja.com

HTMLのJavaScriptでlibphonenumberを使用する

libphonenumberは、Web全体に見られる多数の実装と例を考慮すると、非常に紛らわしいツールです。ご容赦ください。

HTMLファイルのスクリプトタグを介して、jQueryなどの他のすべてのJavaScriptライブラリを使用したように、このパッケージを簡単に使用しようとしています。

私はGoogleの作成ツールを使用してlibphonenumberをコンパイルしました ここ

それで、この単一のファイルで、私はそれを以下のように使おうとしています。しかし、何を試しても、その中のどのメソッドにもアクセスできないようです。

<script type="text/javascript" language="javascript" src="/static/js/libphonenumber.js"></script>
<script type="text/javascript">

    $(".phone-format").keyup(function () {
        // Don't reformat backspace/delete so correcting mistakes is easier
        if (event.keyCode != 46 && event.keyCode != 8) {
            var val_old = $(this).val();
            var newString = new libphonenumber.i18n.phonenumbers.AsYouTypeFormatter('US').input(val_old);
            $(this).focus().val('').val(newString);
        }
    });

</script>

この使用シナリオはまったくサポートされていませんか?

8
Chockomonkey

投稿するといつものように答えが見つかるので、もっと早く投稿するべきだったと思います。

私はJSFiddleを使用しているときにこれに遭遇しただけです。追加できる依存関係があることに気づきました。その中には、libphonenumberのJavaScriptポートがありました(これはすでに使用しようとしました)。接続が拒否されたためにJSFiddleに正しくロードされませんが、リンクは縮小バージョンで機能します。

ここを参照してください: libphonenumber-jsの縮小JavaScript

これを所定の位置にドロップし、コードを少し変更すると、突然レースに出て、すべてが黄金色になります。

<script type="text/javascript" language="javascript" src="/static/js/libphonenumber-js.min.js"></script>
<script type="text/javascript">
     $(".phone-format").keyup(function () {
            var val_old = $(this).val();
            var newString = new libphonenumber.AsYouType('US').input(val_old);
            $(this).focus().val('').val(newString);
    });
</script>

過去数日間に行ったすべての検索で何かを見逃しただけなのか、私はまだ興味があります。これほど難しいことではなかったと思うし、このバージョンを見つけるためにこれほど多くのリバースエンジニアリングが必要になるとは思わないからです。パッケージの。

まあ、これが誰かを助けることを願っています!

11
Chockomonkey