function isWindow( obj )
{
if( typeof obj.closed == '정의되지 않음' ) false를 반환합니다.
var result = /[object (window|global)]/i.test( Object.prototype.toString.call( obj ) );
if( 결과 ) 결과 반환;
시도해 보세요{
obj.closed = obj.closed;
거짓을 반환합니다.
}catch(e)
{
결과 = true;
}
결과 반환;
}
function isDocument( obj )
{
if( typeof obj.body == 'undefine' ) return false;
var b = obj.body;
시도해 보세요{
obj.body = null;
obj.body = b;
거짓을 반환합니다.
}catch(e)
{
true를 반환합니다.
}
}
function isElement( o )
{
var tn = 'tagName',temp = o[tn],result;
if( temp 유형 == '정의되지 않음' ) return false;
시도{
o[tn] = null;
결과 = ( 임시 == o[tn] );
o[tn] = 온도;
반환 결과;
}catch(e)
{
true를 반환합니다.
}
}
function getOwnerWindow( 노드 )
{
if( isWindow( 노드 ) )return node;
var doc = isDocument( 노드 ) ? 노드 : node.ownerDocument;
문서 보기 반환 || doc.parentWindiw || doc.defaultView;
}
需要充分测试