2009-08-06 6 views
2

これは本当に奇妙です。ここで IEで銀色のタグを読み取ることができません!

は、シンプルなマークアップ

<div id="div1"> 
    <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="640px" height="480px"> 
    </object> 
</div> 

と実行警告(。のdocument.getElementById( "DIV1")innerHTMLプロパティ)です。私を示します

<OBJECT type=application/x-silverlight-2 height=480 width=640 data=data:application/x-oleobject;base64,QfXq3+HzJEysrJnDBxUISgAIAAAlQgAAnDEAAAAAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA></OBJECT> 

私は正しいマークアップを示しています。 IE(IE7でテスト済み)だけが奇妙なマークアップの上に私を示しています。

+0

ここで何を求めているのかは分かりませんが、さまざまなブラウザでSilverlightオブジェクトのレンダリングが異なることが予想されます。これはSilverlight.JSファイルによって行われます。 – PortageMonkey

+0

オブジェクトタグにIDを与えないのはなぜですか? – PortageMonkey

+0

私は銀色のコンテンツを挿入するyuiリッチテキストエディタプラグインを作成しています。エディタはiframeを内部で使用し、送信前にiframeのコンテンツをtextareaにコピーします。そして上記のようなIEのマークアップ。 –

答えて

2

この場合、ChromeとFirefoxは元のドキュメントで提供されているHTMLを返します。

IEはこれを行いません.HTMLを解析してDOMを作成すると、元の文書テキストは破棄されます。 innerHTMLを要求すると、要素内に保持されているDOMノードと属性を解析して新しいHTML文字列を作成します。

これは、パーサーとIEの他のコンポーネントが行った突然変異の結果を表示することを意味します。この場合、サイト内のオブジェクトやSilverlight自体を扱うIEのコンポーネントは、<object>の属性に変更を加えました。

関連する問題