1

以前の投稿で次のことを見つけましたが、それについての助けが必要です。

// For VML detection, here's what google maps does (search for "function Xd"):

function supportsVml() { 
  if (typeof supportsVml.supported == "undefined") { 
    var a = document.body.appendChild(document.createElement('div')); 
    a.innerHTML = '<v:shape id="vml_flag1" adj="1" />'; 
    var b = a.firstChild; 
    b.style.behavior = "url(#default#VML)"; 
    supportsVml.supported = b ? typeof b.adj == "object": true; 
    a.parentNode.removeChild(a); 
  } 
  return supportsVml.supported;
} 

VML がサポートされていない場合に、コードを使用してユーザーを別のページに誘導したいと考えています。たとえば、alternative.html というページに転送するためのコードの書き方と実装方法を教えてください。

JavaScriptの知識はあるけど、このレベルじゃない!

ありがとう。

4

2 に答える 2

1

Google が提供する関数を呼び出すだけで、VML がサポートされている場合は true が返され、サポートされていない場合は false が返されます。HTML のどこかに VML の xmlns を追加する必要があることを忘れないでください。

if (!supportsVml())
    window.location = "http://somedomain.com/no-vml.html";

また、ベクター グラフィックスの描画には、クロスブラウザー ライブラリを使用することをお勧めします。Canvas/SVG/VML Drawing Roundupというブログ投稿から選択できるものがいくつかあります。

于 2010-01-19T14:30:30.473 に答える
0

VMLはInternetExplorer(5.0以降)でのみサポートされており、他のブラウザーではサポートされていません。したがって、IEをチェックするだけで十分です。これは、さまざまな方法で実行できます。たとえば、次のようになります。!! document.namespaces

于 2010-01-19T15:58:10.147 に答える