4

私は自分のサイトに ruby​​ on rails 3 を使用しており、ほぼ完成しています。サイトはまもなく (月曜日) 稼働する予定ですが、IE7 の互換性に問題があるため、一時的な措置として、ユーザーをIE7 を使用している場合は「404」のようなページです。問題が修正されるまで、別のブラウザーを試してくださいという基本的な情報が表示されます。

Rails 3でこれをどのように行うのですか? 誰かが過去にこのようなことをしたことがありますか? IE7 をサポートすべき/サポートすべきではないことについては触れたくありません。思っていたよりも少し時間がかかります。

これに関する任意のヘルプ

4

4 に答える 4

13

リダイレクトするスクリプトを実行できます。

<!--[if IE 7]>
  <script type="text/javascript">
    window.location = "http://www.google.com/";
  </script>
<![endif]-->

またはhtml:

<!--[if IE 7]>
  <meta http-equiv="REFRESH" content="0;url=http://www.google.com/">
<![endif]-->

または、このサイトはサポートしていないというメッセージを残すだけです

于 2012-07-19T14:26:12.187 に答える
2

jQuery を使用できる場合は、簡単なブラウザー バージョン テストを実行してから、適切なページにリダイレクトして Cookie を設定できます。

   //IE 7 browser detection
    if ($.browser.msie) {
        var version = $.browser.version;

        if (version == '7.0') {
            var cookie = $.cookie('IE7');

            if (cookie != 'set') {
                $.cookie('IE7', 'set');

                window.location = '404-url-string';

            }

            window.location = '404-url-string';

        }
    }

Cookie を設定するには、jquery Cookie プラグインも取り込む必要があります。「404-url-string」は、リダイレクト先のページのパス名になります。

于 2012-07-19T14:29:59.453 に答える
1

一時的な対策として、Javascriptリダイレクトを使用したIE条件付きは機能しますか?

  <!--[if IE 7]>
    <script type="text/javascript">
      window.location = "/upgrade_browser.html";
    </script>
 <![endif]-->

ソース:Internet ExplorerブラウザバージョンのユーザーエージェントのJavascriptリダイレクト?

于 2012-07-19T14:26:58.190 に答える
1

少しのJavaScriptでこれを処理する必要があります。

JavaScriptnavigatorオブジェクトの簡単なデモを次に示します。

<script type="text/javascript">

txt = "<p>Browser CodeName: " + navigator.appCodeName + "</p>";
txt+= "<p>Browser Name: " + navigator.appName + "</p>";
txt+= "<p>Browser Version: " + navigator.appVersion + "</p>";
txt+= "<p>Cookies Enabled: " + navigator.cookieEnabled + "</p>";
txt+= "<p>Platform: " + navigator.platform + "</p>";
txt+= "<p>User-agent header: " + navigator.userAgent + "</p>";

document.getElementById("example").innerHTML=txt;

</script>

これは文字通り W3Schools から直接取得したものであることに注意してください (通常はお勧めしませんが、この問題では問題ありません)。

とにかく、あなたは次のようなものが欲しいでしょう:

<script type="text/javascript">
if(navigator.appName=="Internet Explorer" && navigator.appVersion == "7.0.Whatever") //maybe its "IE", I didn't actually check. Sorry lol, don't have time to test this out
{
    window.location.href = "YourErrorPageFileName";
}
</script>

そのコードをログイン ページ (またはマスター ページなど) に挿入すると、準備完了です。

補足: コードがそのようにすべてばかげた形式になっている理由がわかりません。StackOverflow は、特定の条件下で奇妙にスラッシュを解析していると思います

于 2012-07-19T14:30:34.783 に答える