9

私は DotNetNukeサイトを持っていますが、今日、顧客から電話があり、IE 10 では機能しないとのことでした。具体的には、ログインと登録のリンクが機能していませんでしたが、互換モードでは機能します。テスト用の Windows 8 マシンを調べたところ、__doPostBack定義されていないために失敗していることがわかりました。過去 6 時間ほどの間、修正を探していましたが、明らかに IE10 ユーザー エージェントが ie.browser ファイルでカバーされており、この修正プログラムをインストールしてサーバーを再起動する必要があることがわかりました。それはうまくいきませんでした。新しい ie.browser ファイルは新しいユーザー エージェントと一致するはずだと思いますが、変更に気づいていません。

問題を解決するために他にどのような手順を実行できますか? 注: サーバーは Windows サーバー 2003 で Service Pack 1 を適用した .NET 3.5 を実行しています。サイトは DotNetNuke 05.06.02 を実行しています。どんな提案でも大歓迎です。

4

3 に答える 3

9

Scott Hanselman によるこの投稿を参照してください。

「バグと修正: ASP.NET が IE10 の検出に失敗し、_doPostBack が未定義の JavaScript エラーになるか、FF5 スクロールバーの位置が維持される」

于 2012-11-02T22:24:42.020 に答える
4

本番サイトでいくつか試してみましたが、うまくいきませんでした。

ホットフィックスをインストールして再起動しました - ダメです

更新された ie.browser ファイルをコピーしました - ダメです

default.browser、ie.browser、および mozilla.browser ファイルを変更して、すべての JavaScript を有効にしようとしましたが、うまくいきませんでした。

私が最終的にそれを機能させた(そしてこれはすべてで機能するはずです)ことの1つInitializePageは、ファイルの機能にありDefault.aspx.vbます。この行をサブルーチンの先頭に追加しました

Page.ClientTarget = "uplevel"

これは (私が理解していることから) すべてのブラウザーを、JavaScript や Cookie など、必要なすべてのものを処理できるかのように扱う必要があります。それはかなり安全な賭けだと思います。

于 2012-11-05T22:46:55.907 に答える
3

web.config に存在する場合、Scott Hanselman の提案された修正をオーバーライドする別の構成があります。

<browserCaps>

ASP.NET ブラウザー機能スニファーは、3 つの方法で構成できます (互いにオーバーライドします)。

  1. Machine wide in <windir>\Microsoft.NET\Framework\<ver>\CONFIG\Browsers
  2. Site only by using .browser files in App_Browsers folder
  3. Site only by using <browserCaps> Element in web.config

IE10 の場合、次のケースを の下に追加します<browserCaps> <case "Mozilla .. MSIE ..>

<case match="\d{2,}" with="${version}">
  frames=true
  tables=true
  cookies=true
  backgroundsounds=true
  vbscript=true
  javascript=true
  javaapplets=true
  activexcontrols=true
  tagwriter=System.Web.UI.HtmlTextWriter
  ecmascriptversion=3.0
  msdomversion=${major}${minor}
  w3cdomversion=1.0
  css1=true
  css2=true
  xml=true

  <filter with="${letters}" match="^b">
    beta=true
  </filter>
  <filter with="${extra}" match="Crawler">
    crawler=true
  </filter>
</case>
于 2012-11-20T14:07:28.760 に答える