哪位大神可以帮我详细解读以下代码,最好告诉我应该怎样读。。。看的好痛苦
function SetOnlineCount(c){this.parent.document.all["frm_status"].contentWindow.document.getElementById("onlinecount").innerHTML=c
}
表单之中,所有对象的引用是分级别的,parent是一个子对象的父对象,当你对子对象进行设计改变父对象的属性值的时候,需要用到this.parent这个句子。比如,一个表单,里面有一个按钮,对这个按钮的click动作进行设计,单击此按钮让它改变整个表单的名字(caption)属性,这个表单就是这个按钮的parent,句子为:[color=#0000FF]this.parent.caption=“欢迎"表单生成以后,单击此按钮,表单的标题改为了欢迎document.all:[/color]
一. document.all是页面内所有元素的一个集合。例如: document.all(0)表示页面内第一个元素 二. document.all可以判断浏览器是否是IE if(document.all){ alert("is IE!"); } 三. 也可以通过给某个元素设置id属性(id=aaaa),然后用document.all.aaaa调用该元素 四. 案例: 代码1: <input name=aaa value=aaa> <input id=bbb value=bbb> <script language=Jscript> alert(document.all.aaa.value) //根据name取value alert(document.all.bbb.value) //根据id取 value </script> 代码2: 但是常常name可以相同(如:用checkbox取用户的多项爱好的情况) <input name=aaa value=a1> <input name=aaa value=a2> <input id=bbb value=bbb> <script language=Jscript> alert(document.all.aaa(0).value) //显示a1 alert(document.all.aaa(1).value) //显示a2 alert(document.all.bbb(0).value) //这行代码会失败 </script> 代码3: 理论上一个页面中的id是互不相同的,如果出现不同tags有相同的id document.all.id 就会失败,就象这样: <input id=aaa value=a1> <input id=aaa value=a2> <script language=Jscript> alert(document.all.aaa.value) //显示 undefined 而不是 a1或者a2 </script> 代码4: 对于一个复杂的页面(代码很长,或者id是由程序自动产生),或着一个 javascript初学者写的程序,很有可能出现两个tags有相同id的情况。 为了编程的时候不出错,我推荐这样的写法: <input id=aaa value=aaa1> <input id=aaa value=aaa2> <input name=bbb value=bbb> <input name=bbb value=bbb2> <input id=ccc value=ccc> <input name=ddd value=ddd> <script language=Jscript> alert(document.all("aaa",0).value) alert(document.all("aaa",1).value) alert(document.all("bbb",0).value) alert(document.all("bbb",1).value) alert(document.all("ccc",0).value) alert(document.all("ddd",0).value) </script>