更新:この問題には回避策があります。次のメタタグのいずれかを含めることにより、IE10を互換モードに強制します。
<meta http-equiv="x-ua-compatible" content="IE=7" />
<meta http-equiv="x-ua-compatible" content="IE=8" />
これはさまざまな理由で実際には完璧な解決策ではありませんが、少なくとも問題を解決します。
元の質問:
数か月前、Windows 8のIE10のSilverlightアプリケーションに問題があることに気付きました(Windows 7のIE10プレビューは試していません)。SLアプリをホストしているasp.netページが最初に読み込まれると、すべてが正常に機能し、アプリケーションは期待どおりに読み込まれます。すぐにページを更新すると、期待どおりにリロードされます。ただし、Silverlightアプリケーションをクリックしてフォーカスし、F5キーを押すと、空白になります。プラグインが完全に消えたようなものです。Fiddlerを使用してリクエストをトレースすると、xapファイルに対してリクエストが発行されていないことがわかります。これがIE10のパッチリリースで修正されることを期待していましたが、これまでのところ何も変更されていません。グーグルしようとすると、これに関する情報が見つかりません。私が最初にそれを発見する可能性は非常に低いと思われ、それ以上の情報が見つからないことに非常に驚いています。問題を再現するには:
- 新しいSilverlightアプリケーションを作成する
- ButtonなどのコンテンツをMainPage.xamlに追加します
- IE10でアプリを実行する(Win8上)
- Silverlightアプリケーション内の任意の場所をクリックします。これはプラグインに焦点を合わせるためだけのものです。
- ページを更新する(F5)
- 結果:Silverlightアプリケーションが読み込まれず、ページが空白になります。
いくつかの観察:
- 上記の手順の後、更新してもアプリケーションは元に戻りません。
- 上記の手順の後、URLをアドレスバーに再入力してEnterキーを押すと、アプリケーションは期待どおりに読み込まれます。
- IEで互換表示を有効にすると、アプリも期待どおりに読み込まれます。互換表示が有効になっている場合、バグを再現することはできません。
今私の質問に:
- 他の誰かがこの行動を観察しましたか?
- もしそうなら、あなたは回避策を見つけましたか?