Firefoxコンソールにこのメッセージが突然表示されるようになったのはなぜですか?
JQuery 1.7.1を使用しています。
このメッセージが表示される原因となったアプリで何ができますか?
JQueryを使用してスクリプトタグをドキュメントに追加すると、async:falseでスクリプトがロードされ、この警告がトリガーされます。
次のように:
var script = $("<script></script>");
script.attr("src", player.basepath + "whatever.js");
$(document.body).append(script);
同期XHR/Ajaxを実行するコードがあります。つまり、完了するまでブロックするAjax要求です。
JQueryを使用する場合は、jQuery.ajax()
の設定オブジェクトで_async: false
_を指定することによりこれを行います。
解決策は、同期リクエストを行うコードをリファクタリングすることです。つまり、jQuery.ajax({async: false})
およびヘルパー関数のすべてのインスタンスを削除し、xhr.open(..., false)
を使用して、使用するサードパーティライブラリにコードを含めます。 。また、jQuery 1.7.1はWebの標準ではかなり古いため、特定の場合にそのjQueryバージョンが内部同期要求を引き続き行うかどうかはわかりません。その場合も確認し、jQueryをアップグレードする必要があります。