2バージョンを検出しないで、オブジェクトを検出します.
1108 ワード
Javascriptを作成するためには、jsで各種ブラウザのバージョンを検出し、異なるjsコードを作成することがまず考えられるかもしれません.
このような思想はよくないので、通用しないのです.
本テキストの問題のように、バージョンを検出しないで、オブジェクトを検出します.
例:
初期のNetscape 4とIE 3はDcument.bodyをサポートしていません.私達はこの2つのブラウザに対してdocument.bodyを使わないようにしたいです.どうすればいいですか?多くの人が一気に思いつきました.ブラウザのバージョンをチェックします.これは一番いいものではないです.
私達はブラウザがあるオブジェクトをサポートしているかどうかを確認します.バージョンを検出するのではありません.
以下はイベントの対象を取得する例です.
その中のwindow.eventは測定対象です.
このような思想はよくないので、通用しないのです.
本テキストの問題のように、バージョンを検出しないで、オブジェクトを検出します.
例:
初期のNetscape 4とIE 3はDcument.bodyをサポートしていません.私達はこの2つのブラウザに対してdocument.bodyを使わないようにしたいです.どうすればいいですか?多くの人が一気に思いつきました.ブラウザのバージョンをチェックします.これは一番いいものではないです.
私達はブラウザがあるオブジェクトをサポートしているかどうかを確認します.バージョンを検出するのではありません.
if(document.body&&document.body.getElementsByTagName)
{
// document.body
// document.body.getElementsByTagName
}
もしif()条件が満たされていないなら、私達のページの中でいくつかの閃光点が少なくなりますが、プログラムは間違いなく実行できます.以下はイベントの対象を取得する例です.
その中のwindow.eventは測定対象です.
//
function $EVENTObject()
{
if(window.event)
{
return window.event;
}
var f=$EVENTObject.caller;
while(f!=null)
{
var e = f.arguments[0];
alert(e);
if(e && (e.constructor==MouseEvent||e.constructor==Event||e.constructor==KeyboardEvent)) return e;
f=f.caller;
}
}