2

firefox のローカルホストで作業中に「画像が破損しているか、切り捨てられました」というエラーが発生しましたが、サーバー上の同じページではこのようなエラーは発生しません。 phonegap を使用して Android アプリを開発し、アプリの画像を読み込むときに同じページを使用しました。 「強制終了」して終了します。

次のコードを使用して画像を埋め込みました:-

$("#logo").attr('src', 'url');

htmlコードは次のとおりです。

<img style="width:190px; height: 145px; margin-top: 0%;" id="logo"/>

このようなエラーは、一部の画像のみを表示するときに発生します。残りは正常に動作します。そのような画像でこのエラーを処理する方法を教えてください。

4

1 に答える 1

0

jQueryエラーハンドラーを画像要素にアタッチしてみてください。

$('#logo').error(function() {
    alert('An error occurred when loading the image!.')
}).attr("src", URL);

.error()とへの呼び出しを連鎖させattr()て、2つのコマンドを実行する必要がないようにすることができます。

その要素で発生したJavaSctiptエラーがあると、エラーコールバックがトリガーされます。

jQueryのドキュメントから引用-

エラーイベントは、ドキュメントによって参照され、ブラウザによってロードされる画像などの要素に送信されます。要素がロードされていない場合に呼び出されます。

あなたの問題に関するいくつかのより関連性のある情報(ローカルでの作業)-

ブラウザがエラーイベントを発生させる前に、イベントハンドラをアタッチする必要があります。そのため、この例では、ハンドラをアタッチした後にsrc属性を設定します。また、ページがローカルで提供される場合、エラーイベントが正しく発生しない場合があります。エラーはHTTPステータスコードに依存しており、URLがfile:protocolを使用している場合は通常トリガーされません。

于 2012-08-24T08:58:06.890 に答える