2012-01-11 11 views
3

私はInternet Explorerに自分のWebサイトを閲覧させないようにすることで、elthismをn次のレベルにしたいと考えています。IEが私のウェブサイトを表示しないようにしますか?

このようなことをする方法はありますか?私のウェブサイトはCakePHPフレームワークに基づいて構築されています。

+3

"私はないユーザー、damnit、私のためのソフトウェアを書きます。" – JohnFx

+0

あなたはあなたのウェブサイトを作成した訪問者です。それでなぜあなたは彼らを去らせたいのですか? – duri

+0

一般的にIEの代わりに泥棒のブラウザをテストすることを検討してください。 'window.XMLHttpRequest === undefined'は、例えば古いIEや他の古代のブラウザと一致します。 – ThiefMaster

答えて

3

PHPで実行したい場合は、$_SERVER['HTTP_USER_AGENT']変数を使用してユーザーエージェントを読み込み、それがIEを使用しているかどうかを調べ、そうであれば読み込みを停止することができます。私はすべてのIEのバージョンは以下をサポートしてかなり確信している

if (preg_match("Internet Explorer", $_SERVER['HTTP_USER_AGENT']) == 0) { 
    // print message or whatever and abort 
} 
5

- しかしJavaScriptを必要としません:あなたはされて簡単な例で、文字列に正規表現を使用したいと思います。

<!--[if IE]> 
<script type="text/javascript"> 
window.location = "http://www.google.co.uk/chrome" 
</script> 
<![endif]--> 
+0

条件付きコメントのサポートはIE10で削除されます(私はもう誰もそれらを使用しなくてはならないと思いますが)。 – duri

1

あなたのウェブサイトでjQueryを使用していますか?

もしそうなら、あなたは彼らがIEのいずれかのバージョンを使用している場合は、ユーザーに優しいメッセージを表示するようにブラウザバリ-jsからhttps://github.com/bml3i/browser-validator-js)を利用することができます。 HTMLヘッダーにbrowser-validator-jsとjQueryを含めて、HTML BODYに以下のコードを追加してください。

<script type="text/javascript"> 
    $(document).ready(function() { 
     BrowserValidator.init({ 
      msie: { 
       majorVersionMax: 0, 
       prompt: "Unfortunately, this site does not support IE. " 
      } 
     }).validateBrowser(); 
    }); 
</script> 

これは一例です:http://blog.bigcay.com/demo/browser_validator_demo.html

関連する問題