0

IEに問題があります(IE9でテストしていますが、以前のバージョンでも同じように動作すると思います)。

PHPから送信する応答は次のとおりです。

{"success":true,"content":"<img src=\"\/media\/page\/1528484482.jpg\" width=\"140\" height=\"140\" alt=\"1528484482.jpg\" \/>"}

Firefox、Chrome、Safari、Operaなどでは問題なく動作しますが、IEでは動作しません。応答は空のオブジェクトです。

応答を次のように変更すると、正常に機能します。唯一の違いは、imgタグを閉じる前のスラッシュです。

{"success":true,"content":"<img src=\"\/media\/page\/1528484482.jpg\" width=\"140\" height=\"140\" alt=\"1528484482.jpg\">"}

IEで壊れないように、「コンテンツ」応答を解析する方法はありますか?

4

1 に答える 1

1

(これはアドバイスであり、解決策ではありません)プレゼンテーションレイヤー(js / html [how])とドメインレイヤー(php [what])を分離します。

ドメインレイヤーは、返すデータを決定します。プレゼンテーション層は、データの表示方法を決定します。

画像パスを返し、プレゼンテーション層に画像をユーザーに表示する方法を決定させます。


これで、問題の解決策はDoctypeの宣言になります。問題はDoctypeを宣言していないことであり、IEはXHMTLをデフォルトのDoctypeとして使用していると思います。
XHTMLでは、タグを適切に閉じる必要があります。 http://www.w3schools.com/tags/tag_img.asp

残りのブラウザはHTML5を使用していると思いますが、画像に終了タグは必要ありません。

于 2012-11-05T16:22:21.010 に答える