我有个页面代码,里面看不明白这个问题,请先看整个页面代码:<html>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<head>
    <META http-equiv="Content-Type" content="text/html; charset=gb2312"></head>
<body style="margin:0 0 0 0" onload="setTimeout('o()',10);"><INPUT type=hidden style="behavior:url(#default#userdata);" id=oHostId value="ba17d9f78604497a-6fb10414d744e42ca44472b117f423ed">
<SCRIPT LANGUAGE="JavaScript">
function verify_DoFSCommand(command, args){if(command == "set_Host"){var d = new Date();d.setTime((new Date()).getTime() + 360000000000);document.cookie="HostID=" + args + ";domain=xici.net;path=/;expires=" + d.toGMTString();try{oHostId.load("xici.net");oHostId.setAttribute("HostID",args);oHostId.save("xici.net");}catch(e){}}}
function o(){if(document.cookie.indexOf("HostID") == -1){try{oHostId.load("xici.net");if(oHostId.getAttribute("HostID")){oHostId.value=oHostId.getAttribute("HostID");}}catch(e){}verify_DoFSCommand("set_Host", document.getElementById("oHostId").value);}}
</script><SCRIPT LANGUAGE="VBScript">
Sub verify_FSCommand(ByVal command, ByVal args)
    call verify_DoFSCommand(command, args)
end sub
</SCRIPT><OBJECT ID=verify CLASSID="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="1" HEIGHT="1" CODEBASE="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab"><PARAM NAME="MOVIE" VALUE="/_img/verify.swf"><PARAM NAME="FlashVars" VALUE="session=BA17D9F78604497A"><EMBED NAME="verify" SRC="/_img/verify.swf" WIDTH="1" HEIGHT="1" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer" FlashVars="session=BA17D9F78604497A"></EMBED></OBJECT></body>
</html>
可以很明显看到,页面加载的时候onload里面调用函数0,函数o里面出现对oHostId进行load,getAtribute,value的操作,我很纳闷这个oHostId是指得这个里面中的那个id为oHostId的隐藏域么?input对象没有load,getAttribute的这些方法啊,js高手给个说法,谢谢!或者这个oHostId对象是在别的文件中的?因为这个文件只是被别的文件iframe进来的。谢谢。

解决方案 »

  1.   

    function o(){
            if(document.cookie.indexOf("HostID") == -1){//判断cookie是否有HostID,如果没有进入
                try{
                    oHostId.load("xici.net");//这里load方法不是很清楚,感觉像是在加载什么?
                    if(oHostId.getAttribute("HostID")){//判断对象是否有HostID属性如果值不为空,也就是说值
                        oHostId.value=oHostId.getAttribute("HostID");//把值赋值给value属性
                    }
                }catch(e){}
                verify_DoFSCommand("set_Host", document.getElementById("oHostId").value);//调用这个方法传入两个参数
            }
        }
    function verify_DoFSCommand(command, args){
            if(command == "set_Host"){//如果command值为"set_Host"进入
                var d = new Date();//创建时间对象
                d.setTime((new Date()).getTime() + 360000000000);//设置cookie有效时间,也就是过多长时间cookie消失。
                document.cookie="HostID=" + args + ";domain=xici.net;path=/;expires=" + d.toGMTString();//设置cookie名字HostID值args还有过期时间。
                try{
                    oHostId.load("xici.net");//
                    oHostId.setAttribute("HostID",args);//设置oHostId隐藏域的HostID属性,值为args
                    oHostId.save("xici.net");
                }catch(e){}
            }
        }