javascript|對象
從第一次發表文章,到現在才發表第二篇,個人認為不行的,我就不會發出來。。
這幾天一直在找Javascript的所有對象的屬性與方法,沒有辦法,只好自己隨便寫一個了。。先用著,大家如果有更好的可以拿出來分享,獲得對象後再查資料,不是更快嗎?
<!--
---------------------------------------------------------
Write By YYUJ
作用是:枚舉對象的所有成員資訊
---------------------------------------------------------
//-->
<form name="form1" method="post" >
<input type="text" name="objname" size="20" value="document">
<input type="submit" value="OK">
</form>
<script language="javascript">
<!--
function getinfo()
{
var obj=document.form1;
getobj(obj.objname.value);
return false;
}
function getobj(mObjname)
{
// 建立變數
var objarray = new Array(); // 用來儲存變數名稱的數組
var objname=mObjname; // 接收外面傳進來的對象名稱(字元型)
var typename;
//-- 出錯處理
try
{
// 枚舉對象的所有成員資訊
for(var i in eval(objname))
{
objarray[objarray.length++] = i;
}
//-- 獲得用來存放資訊的DIV標籤
var objinfo=document.getElementById("objinfo")
objinfo.innerHTML=""
objinfo.innerHTML="ObjName:<b style='color=#ff0000'>"+objname+"</b><br>"
//-- 如果沒有存在任何成員就返回
if(objarray.length==0)
{
objinfo.innerHTML="ObjName:<b style='color=#ff0000'>"+objname+"</b> --沒在存在任何成員";
return;
}
//-- 對數組進行排序
objarray.sort();
//-- 對輸出資訊作進一步處理
for(var k=0;k<objarray.length;k++)
{
typename=typeof(eval(objname+"."+objarray[k]))
//-- 如果是對象就直接進行連結,否則不顯示
if("object"==typename)
{
objinfo.innerHTML=objinfo.innerHTML+" |--<a href=\"javascript:getobj('"+objname+"."+objarray[k]+"')\">"+objarray[k]+"</a> ==================== "+typename
}
else
{
objinfo.innerHTML=objinfo.innerHTML+" |--"+objarray[k]+" ==================== "+typename
}
//-- 加底線,主要是為了美觀
objinfo.innerHTML=objinfo.innerHTML+"<br> ---------------------------------------------------<br>"
}
}
catch (e)
{
alert("您輸入的不是正確的對象,請輸入正確的對象!\n\n如果是,請輸入首碼,\n\n如,我要查詢Body,那麼我輸入document.body");
}
}
//-->
</script>
<div name="objinfo" id="objinfo"></div>