Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.
Here are some sample HTML files with frames.
FRAMES.HTML ------------- <HTML> <HEAD> <TITLE>OMS Temp</TITLE> </HEAD> <FRAMESET ROWS="0,*,*" BORDER=1 FRAMESPACING=2 BORDERCOLOR="#000064"> <FRAME NAME="checkFrame" SRC="" FRAMEBORDER=0> <FRAMESET COLS="130,*" BORDER=1 FRAMESPACING=0 BORDERCOLOR="#808080"> <FRAME NAME="shortcutBar" SRC="" SCROLLING="AUTO" FRAMEBORDER=0> <FRAME NAME="mainTopView" SRC="topframe.html" SCROLLING="AUTO" FRAMEBORDER=1> </FRAMESET> <FRAME NAME="detailFrame" SRC="" SCROLLING="AUTO" FRAMEBORDER=1> </FRAMESET> <NOFRAMES> <BODY> <P>Sorry your browser does not support frames. Please upgrade. </BODY> </NOFRAMES> </HTML>TOPFRAME.HTML --------------- <HTML> <HEAD> <TD VALIGN=MIDDLE NOWRAP CLASS="header"> <P>April 01, 2004 </TD> </BODY> </HTML>
I tried the following approach from what I know about html:
browserDoc = Browser.Document frames = browserDoc.frames message ("# of frames", frames.length)maybe I would have a chance but when I try that, I get "0" frames. I can you a better ideas. I tried. Please help.
#definesubroutine startMSIE(url) Browser = objectopen("InternetExplorer.Application") Browser.addressbar = @false Browser.statusbar = @false Browser.menubar = @false Browser.toolbar = @false browser.visible = @true browser.navigate(url) ; wait until page loads... WaitForPageLoad() ; setup the document object... browserDoc = Browser.Document all = browserdoc.all return(browser) #endsubroutine #DefineSubroutine WaitForPageLoad() ; assume Browser While browser.busy || browser.readystate == 1 TimeDelay(0.5) EndWhile While browser.Document.ReadyState != "complete" TimeDelay(0.5) EndWhile return #EndSubroutine url = "C:\Jay\z\Cfg\temp.html" br = startMSIE(url) frames = browserDoc.frames message ("# of frames", frames.length)This shows it better...
#definesubroutine startMSIE(url) Browser = objectopen("InternetExplorer.Application") Browser.addressbar = @false Browser.statusbar = @false Browser.menubar = @false Browser.toolbar = @false browser.visible = @true browser.navigate(url) ; wait until page loads... WaitForPageLoad() ; setup the document object... browserDoc = Browser.Document all = browserdoc.all return(browser) #endsubroutine #DefineSubroutine WaitForPageLoad() ; assume Browser While browser.busy || browser.readystate == 1 TimeDelay(0.5) EndWhile While browser.Document.ReadyState != "complete" TimeDelay(0.5) EndWhile return #EndSubroutine url = "C:\temp\temp.html" br = startMSIE(url) frames = browserDoc.frames display (2, "# of frames", frames.length) bgcolorlist = "honeydew|powderblue|red|green|gold|purple" ; make each frame a different color... for x = 0 to frames.length-1 thisframe = frames.item(x) thisdoc = thisframe.document thisbody = thisdoc.body thisbody.bgcolor = itemextract(x+1, bgcolorlist, "|") ; set the bgcolor for the frame... gosub getDocumentText ; check for text inside the frame... objectclose(thisbody) objectclose(thisdoc) objectclose(thisframe) next objectclose(frames) exit :getDocumentText HColl = thisdoc.GetElementsByTagName("HTML") html = HColl.item(0) if html.innerText <> "" then message("Frame #%x%", html.innerText) objectclose(html) objectclose(HColl) return
Article ID: W16639
File Created: 2005:02:18:12:21:42
Last Updated: 2005:02:18:12:21:42