1

aspxページでこの宣言を行うと、その理由を理解しようとしています...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

DOMでは、次のようになります

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML Strict//EN">

イライラする理由は、IE9 がそれを IE7 標準および IE9 互換モードに入れることです。IE 8 では問題なく、これは行われません。これは大きな問題です。なぜなら、IE9 を IE9 標準に強制するまで、作成中のアプリが壊れてしまうからです。企業全体のクライアントがアプリを使用するたびにこれを行うとは期待できません。

このアプリは $.ajax 呼び出しを使用しますが、この問題はページの読み込み時に jquery がまだ呼び出されていないときに発生します。

単純なソースを表示して検証すると、問題ありません。エラーなし。「dom」ソースを検証すると、それは惨事です。どうして??これを修正する方法または回避策はありますか?

ありがとう!

4

2 に答える 2

1

これはあなたにとって理想的な解決策ではないかもしれませんが、私にとってうまくいくようになったのは、次のDoctypeを使用することだけです。一見シンプル:

<!DOCTYPE html>

それでおしまい!

それが悪い考え(またはあなたが望むものではない)である理由はおそらくありますが、あなたの状況で可能であればそれを試してみて、それが失望した場合は私に知らせてください。

アップデート:

これについて私が学んだ他のことは、doctype宣言の前の空の行やコメントでさえ、IEが手を挙げてしまう可能性があるということです。

于 2012-04-12T14:10:04.453 に答える
0

答え: あはは!これは頭​​の「最初の」エントリでなければならず、問題を解決します。「最初」であることも重要です。理由はわかりませんが、複数の方法を試しましたが、それが機能する唯一の方法です。

于 2012-04-13T12:51:00.863 に答える