0

最近、これを使用して Windows のバージョンを検出できることがわかりました。

<!--[if WindowsEdition]>Blah<![endif]-->

しかし、どの値をWindowsEdition使用しますか?

基本的に、条件付きコメントを使用して、Internet Explorer のユーザーが IE9 以降へのアップグレードをサポートする Windows バージョンを使用しているかどうかを検出しようとしています。「Windows XP以下」と「Windows Vista以上」の違いを検出できるようにしたいです。

これは、IE7 以前のユーザーに IE9/10 への更新、または OS が IE9 をサポートしていない場合は Chrome/Firefox への切り替えを案内することを目的としています。これを行う理由は、このサイトは IE8 で動作しますが、多くの CSS 機能が不足しているため、一言で言えば「醜いが使用できる」ためです。

4

1 に答える 1

1

Windows Vista 以降のバージョンのみが WindowEdition 条件付きコメントに値を返します。

条件付きコメントウィキペディアのページから

Web ページの表示に使用される Windowsのエディションに対応する整数。値が使用されているエディションと一致する場合、true のブール値を返します。サポートされている値と、それらが説明するエディションについては、GetProductInfo 関数の pdwReturnedProductType パラメーターを参照してください。

強調は私のものです。エディションでは、Home、Home Starter、Professional、Ultimate などを意味します。

GetProductInfo 関数の MSDN ページはこれをサポートしています。このページには、次を含む GetProductInfo の入力パラメーターもリストされています。

dwOSMajorVersion [入力]

オペレーティング システムのメジャー バージョン番号。最小値は 6 です。

バージョン 6 は Vista に対応するため、Windows XP および XP よりも古いバージョンの Windows にはこの GetProductInfo 関数がなく、呼び出すことができず、IE の条件付きコメントと比較するために何も返さないのではないかと思います。

于 2012-12-08T02:45:52.143 に答える