問題

私は amq.js (ActiveMQ)と Google Maps の両方で作業しています。私はこの順序でスクリプトをロードします

 <head>
    <meta http-equiv="content-type" content="text/html;charset=UTF-8" />
    <title>AMQ & Maps Demo</title>

    <!-- Stylesheet -->
    <link rel="stylesheet" type="text/css" href="style.css"></link>

    <!-- Google APIs -->
    <script type="text/javascript" src="http://www.google.com/jsapi?key=abcdefg"></script>

    <!-- Active MQ -->
    <script type="text/javascript" src="amq/amq.js"></script>
    <script type="text/javascript">amq.uri='amq';</script>

    <!-- Application -->
    <script type="text/javascript" src="application.js"></script>
</head>
 

しかし、私のapplication.jsではうまくロードされますが、AMQでTopicを購読しようとするとエラーが発生します。 AMQは、Firefoxのエラーコンソールがオブジェクトが定義されていないと言うプロトタイプに依存します。スクリプトの読み込みが完了する前にamqオブジェクトを使用することに問題があると思います。私のapplication.jsでそれら

Googleはこの素晴らしい関数呼び出しgoogle.setOnLoadCallback(initialize);を持っています。私はamq.jsがこのようなものを持っているかどうかはわかりません。

  ベストアンサー

私のapplication.jsでそれらを使用する前に、両方のスクリプトがロードされていることを確認する方法はありますか?

JavaScriptファイルは順番にロードしてブロックする必要があります。あなたが依存しているスクリプトが変わったことをしていない限り、他のファイルの後にapplication.jsをロードするだけです。

非ブロック JavaScript ダウンロード には、スクリプトの読み込み方法に関する情報があります(ブロッキングを破壊するためのいくつかのテクニックについて説明します)。

  同じタグがついた質問を見る

javascriptgoogle-mapsactivemq