4

jQueryのonerror処理(またはより具体的にはブラウザーのjavascript onerrorイベント)でジレンマに遭遇しました。データベースから画像を読み込む画像ハンドラーがあります。画像が見つからない場合は、404ステータスコードが返されますが、デフォルトの画像が見つかりません。

コンテンツ本体が空でない限り、ブラウザはonerrorイベントを発生させないことがわかりました。jQueryは、これは応答ステータスコードに基づいていると述べていますが、これは真であってはなりません。誰かがこれを回避する方法を知っていますか?

4

1 に答える 1

1

長い回答を入力しましたが、私のブラウザはそれを噛み砕きました...次の記事を見て、DOM がロードされたにOnError を画像にバインドするとどうなるかを確認してください。

http://maisonbisson.com/post/12150/detecting-broken-images-in-javascript/

ただし、達成しようとしている方法は回避策であり、実際には有効な動作であるため、注意してください。

404 を返し、次にデフォルトの画像を返す代わりに、画像ハンドラーが要求された画像を見つけられない場合は、単純にデフォルトの画像と OK を返してみませんか? 結局のところ、それはあなたが必要とする特定の画像ではありませんが、デフォルトではあるものの有効な応答です。

于 2013-02-28T01:47:17.837 に答える