大家看看下面代码,代码是运行在谷歌的主页面,如果大家要试的话,大家同样也可以试试这代码的运行结果。
Dim LinkDes Set LinkDes=description.Create() LinkDes("html tag").value="A" Set LinkObj=browser("Google").Page("Google").ChildObjects(LinkDes) For i=0 to LinkObj.count LinkObj(i).click browser("Google").Back Next |
代码运行完后,你会发现,原来在循环第2次连接点击的时候,抛出了一个“General run error”。这个是为什么会这样?之前也同样有论坛的朋友问到这样的问题,所以今天就在这里提到。
问题是出在了对第一个连接点击后,做了返回操作所导致的,在第一次back的时候,LinkObj对象就已经丢失了,失效了。所以你在做第2次操作的时候,LinkObj(i)就已经找不到了,因此它会出错。
正确的方法,这个也是我目前想到的,或者还有其它达人能做更好的方法出来。
Dim LinkDes Set LinkDes=description.Create() LinkDes("html tag").value="A" Set LinkObj=browser("Google").Page("Google").ChildObjects(LinkDes) For i=0 to LinkObj.count Set LinkObj=browser("Google").Page("Google").ChildObjects(LinkDes) LinkObj(i).click browser("Google").Back Next |