2

現在、断続的なインターネット接続の問題が発生しており、その結果、(自分の Web サイトの) Web ページの読み込みが停止しています。

下隅の Chrome ステータスには、「api.mixpanel.com を待機中」と表示されます。

Chrome 開発者ツールが開きません。

何が起こっているのですか?また、これを回避するために mixpanel API 呼び出しをコーディングするにはどうすればよいですか? 例: 私の Web サイトはまだ機能しており、到達可能ですが、mixpanel はそうではありません。この状況でも Web ページをロードしたいと考えています。

* 編集: 2013 年 2 月 6 日追加情報を追加 *

@raylu先月以内にmixpanel javascriptを取得したので、ごく最近です。mixpanel のバージョンを入手する方法がわかりませんが、いくつかの断片を以下に示します。

これを HTML ページの < head > に入れました。

<!-- start Mixpanel -->
...
src=("https:"===e.location.protocol?"https:":"http:")+'//cdn.mxpnl.com/libs/mixpanel-2.2.min.js';
...
)};b.__SV=1.2}})

次に、html 本文コンテンツがあります。次に、次のように本体を閉じます。

</body>
<script type="text/javascript">mixpanel.track('some tag');</script>

<script type="text/javascript">mixpanel.name_tag('some id');</script>

</html>
4

1 に答える 1

1

mixpanel.track呼び出されると、Mixpanel JSライブラリはXHRを起動します(ほとんどのブラウザーの場合)。これにより、リクエストが完了するまで、ページが読み込まれているように見えます(タブのスピナー)。ただし、XHRは完全に非同期であり、ページ上の他のJSの実行をブロックしないため、そのパフォーマンスに影響を与えることはありません。

trackこれが悪い可能性があるのは、コールバックを次の宛先に渡す場合のみです。

mixpanel.track('some event', {'some prop': 'some value'}, function() {
    window.location = '/thanks';
});

接続がない場合、コールバックは起動しません。ただし、この動作に依存せず、追跡するだけである限り、最悪のケースはいくつかのイベントを失うことです。

于 2013-02-06T08:36:10.717 に答える