1

IE8がエラーをスローしないようにオブジェクト検出を実行しようとしていますnew XMLSerializer()が、問題にアプローチするためのクロスブラウザーの方法を見つけることができませんでした。私は通常使用しますobject!='undefined'が、これを実装するクロスブラウザの方法は見つかりませんでした。

Firefox10とIE8でテストした方法のいくつかを次に示します...

if (typeof new XMLSerializer!='undefined') {alert('unsupported, 1');}

if (typeof new XMLSerializer()!='undefined') {alert('unsupported, 2');}

if (new XMLSerializer!='undefined') {alert('unsupported, 3');}

if (XMLSerializer!='undefined') {alert('unsupported, 4');}

if (window.XMLSerializer!='undefined') {alert('unsupported, 5');}

if (typeof XMLSerializer !== 'undefined') {alert('unsupported, 6');}

XMLSerializerでは、IE8などのサポートされていないブラウザーでエラーをトリガーせずにオブジェクト検出を実装するにはどうすればよいでしょうか。

4

1 に答える 1

1

あなたはそれがこれによってそれを持っているかどうかをテストするべきです:

if (typeof window.XMLSerializer !== 'undefined') {
    alert('Has XMLSerializer');
} else {
    alert('No has XMLSerializer');
}

これがデモンストレーションのフィドルです:http://jsfiddle.net/fGZbL/1/

または、私が投稿した元のフィドルも機能するはずです(これはの真実性をテストしますwindow.XMLSerializer):http://jsfiddle.net/fGZbL/

于 2012-07-29T00:06:43.953 に答える