5

私の推測では、srcファイルはXMLに対応している必要がありますが、もちろん、あらゆる種類の非XML準拠のエンティティを使用しているため、JSファイルはどれもそうではありません。

getScript()はXMLファイルを期待している可能性があります= /

何かご意見は?

    if(is_def(pObj)){
      $.getScript(pObj.src,function(){
            pObj.stat = STATUS_OK;
            $a.dequeue(pObj);         
      });

    }

サーバーを使用せずに、デスクトップでもこれを開発しています

4

3 に答える 3

9

私が見る限り、これはFirefoxのバグであり、エラーメッセージは実際には偽物です。私のテストでは、WebサーバーなしでgetScript()を使用した場合にのみ発生します。getScript()がWebサーバーで使用されているページを開いても、エラーは発生しません。Firefoxでさえ重大なスクリプト停止エラーとしてフラグを立てないので、無視しても問題ないと思います。すべてが正常に機能し、ほとんどのユーザーには表示されません。

于 2011-07-23T15:42:16.380 に答える
1

jQueryの公式ドキュメントには、XMLの期待については何も書かれていません。それは単に通常のjavascriptファイルを期待しているように見えます。また、コメント付きのjavascriptファイルをロードする簡単なテストをいくつか試しましたが、問題はありませんでした。

javascriptファイルに構文エラーがあるか、ajax呼び出しが404であると感じています。

ここにいくつかの提案があります。

  • ブラウザがサポートしている場合は、console.log(pObj.src)を実行して、その変数に格納されているスクリプトURLが正しいことを確認してください。
  • javascriptコードをメインのjavascriptファイルに直接貼り付けて、そこで構文エラーが発生するかどうかを確認してください。
  • $ .ajaxメソッドを使用して、同じ効果を手動で実現します。
于 2010-03-16T23:48:50.813 に答える
1

サーバーが応答に間違ったコンテンツタイプを設定しているため、ブラウザが返されたデータをjavascriptではなくXML/HTMLとして解釈しようとする可能性があると思います。

簡単なデモを作成しました:http://jsbin.com/avewo/2からロードするhttp://jsbin.com/ilepu/2。すべてが期待どおりに機能しますロードスクリプトにもコメントが含まれています

于 2010-03-17T00:07:25.817 に答える