0

私たちの Web ページは、ashx ページから動的に生成された svg を使用しています。これは、Adobe SVG プラグインを使用する IE8 以前で機能します。IE9(互換モード含む)では動作しません。<object> タグを使用しています。IE9 で動作するようにページを変更しようとしています。

以下を使用して、Web で見つけた簡単なテスト svg を使用して、SVG をレンダリングすることができました。

<embed src="http://oursite.com/circle1.svg" type="image/svg+xml"
    height="200" width="550"/>

ただし、これを次のように変更すると:

<embed src="http://oursite.com/ourhandler.ashx?t=Circle&v=1&ext=.svg"
    type="image/svg+xml" height="200" width="550"/>

垂直スクロールバーが無効になっている空白のボックスが表示されます。

の出力は"ourhandler.ashx?t=Circle&v=1&ext=.svg"「circle1.svg」と同じ内容で、http: //oursite.com/Ourhandler.ashx?t=Circle&v=1&ext=.svg を参照すると、IE9 で正しくレンダリングされます。

動的に生成された svg を IE9 で動作させるにはどうすればよいですか? 私は<embed>タグには付いていませんが、他の方法 (<object>タグなど) ではうまくいきませんでした。

4

3 に答える 3

0

私も同じ問題を抱えています。

Fiddlerを使用して問題を追跡したところ、要素が "scr" 属性で指定された URL にリクエストを送信していないことがわかりました。

最後に解決策を見つけました。

ステップ1

src を次のように変更します (".svgx" ext を使用)

<embed src="http://oursite.com/ourhandler.svgx?t=Circle&v=1"
type="image/svg+xml" height="200" width="550"/>

ステップ2

URL を実際の URLに書き換えるHttpModule を記述します。

あなたの場合、実際のURLはhttp://oursite.com/ourhandler.ashx?t=Circle&v=1&Ext=.svg

于 2012-05-25T06:21:00.317 に答える
0

すべてのブラウザで動作します:

http://jsfiddle.net/mihaifm/n8DWe/3/

埋め込みをカプセル化する方法の問題かもしれません。

于 2012-04-21T14:10:02.900 に答える