[jawsscripts] Re: Problem capturing text using DOM in IE 11

  • From: Bob <temp@xxxxxxxxxxxxxxx>
  • To: jawsscripts@xxxxxxxxxxxxx
  • Date: Fri, 12 Dec 2014 16:52:11 +0000

With Jaws 15
IE 11
This will pop the whole page text in a message box.

Script Test ()
Var
     Object HTML,
     String sText

     Let HTML = IEGetCurrentDocument ()
     Let sText = HTML.body.innerText

     MessageBox (sText)

EndScript

Does that help at all?

Bob


On 12/12/2014 16:28, John Robichaud wrote:
> Bob & Scott,
> I've tried both of your suggestions without success. The situation is
> critical now as an individuals employment counts on resolving this.  I've
> done some more experimenting and have discovered the following.
> When using Internet Explorer 8 under Windows 7 with either Jaws 13 or 15 the
> code I've reposted below successfully captures the text on a web page.  For
> this test I've used Freedom Scientifics home page but the web page doesn't
> seem to be significant.
> With either IE 9 or IE 11 the code returns nothing.  I've been unable to
> come up with any script code that can use the DOM to access text in IE 9 or
> IE 11.  Can use of the DOM be broken in Jaws as regards newer versions of
> IE?  If so, that's a very serious problem.
> I'm deperate at this point - if anyone can demonstrate Jaws code that
> successfully uses the DOM to access text in IE 9 or 11 please post it.  My
> code that works in IE 8 follows:
>
> String Function WorkSpaceText ()
> var
>       object doc,
>       object win,
>       string sBuffer
>
>       Let doc = ieGetCurrentDocument ()
>       Let win = ieGetUnrestrictedWindow(doc).document.body
>       Let sBuffer = win.createTextRange().text
>               return sBuffer
> EndFunction
>
> John Robichaud
>
>
> -----Original Message-----
> From: jawsscripts-bounce@xxxxxxxxxxxxx
> [mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Scott Huey (Redacted
> sender "smartinhuey@xxxxxxxxx" for DMARC)
> Sent: Wednesday, December 10, 2014 3:48 PM
> To: jawsscripts@xxxxxxxxxxxxx
> Subject: [jawsscripts] Re: Problem capturing text using DOM in IE 11
>
> The one thing I can tell you about DOM manipulation techniques within JAWS
> scripts is that JAWS absolutely hates chaining the object methods more than
> one layer deep. In a number of instances, I've found that while the chain is
> conceptually sound, the function only works if I walked the individual calls
> into variables. Example from below,  "oFrame.document.body.innerText" is a
> valid call in JavaScript, but in JAWS script you may find it only works if
> you do it like this:
>   
> let oDOM = ieGetCurrentDocument ()
> let oFrame = oDOM.frames(2)
> let oObject = oFrame.document
> let oObject = oObject.body
> let sText = oObject.innerText
>
>
>
>
> --------------------------------------------
> On Wed, 12/10/14, Bob <temp@xxxxxxxxxxxxxxx> wrote:
>
>   Subject: [jawsscripts] Re: Problem capturing text using DOM in IE 11
>   To: jawsscripts@xxxxxxxxxxxxx
>   Date: Wednesday, December 10, 2014, 3:03 PM
>   
>   John
>   
>   I have no idea what the difference is but I
>   have always used
>   IeGetCurrentDocument when
>   playing with the DOM.
>   I would try something
>   like the following:
>   
>   String
>   Function GetFrameContents ()
>   Var
>       Object oDOM,
>      
>   Object oFrame,
>       String sFrameText
>   
>       Let oDOM =
>   ieGetCurrentDocuemnt ()
>       Let oFrame =
>   oDOM.frames(2)
>       
>       Let sFrameText =
>   oFrame.document.body.innerText
>   
>       Return sFrameText
>   
>   EndFunction
>   
>   You may need to fiddle with the document.body.
>   and the innerText to maybe
>   innerHTML or
>   outerText dependant on what sort of output you need.
>   You also need to take into account the origin
>   of the frame contents. To
>   increase security
>   modern browsers prevent scripts from running from a
>   different domain. If the frame contents are
>   from http://siteA.com and the
>   main page is http://siteB.com
>   you wont be able to access it.
>   
>   Hope this helps.
>   
>   Bob
>   
>       
>   
>   -----Original Message-----
>   From: jawsscripts-bounce@xxxxxxxxxxxxx
>   [mailto:jawsscripts-bounce@xxxxxxxxxxxxx]
>   On Behalf Of John Robichaud
>   Sent: 09
>   December 2014 21:06
>   To: JawScripts
>   Subject: [jawsscripts] Problem capturing text
>   using DOM in IE 11
>   
>   I'm
>   having a problem capturing text from an HTML frame using the
>   DOM in IE
>   11.  This is Windows 7 and Jaws
>   15.
>   The following code works with IE8 and
>   Jaws 13 but not with IE 11 and Jaws
>   15:
>   
>    
>   
>   String Function WorkAreaText ()
>   
>   var
>   
>        object doc,
>   
>        object
>   TopWindow,
>   
>    
>      object win,
>   
>        object frames,
>   
>        string
>   sBuffer
>   
>    
>   
>        Let doc =
>   ie4GetCurrentDocument ()
>   
>    
>      Let topWindow = doc.parentWindow
>   
>        Let topWindow
>   = topWindow.top
>   
>    
>      Let frames = TopWindow.frames
>   
>        Let win =
>   ieGetUnrestrictedWindow(frames(2)).document.body
>   
>        Let sBuffer =
>   win.createTextRange().text
>   
>                    
>      return sBuffer    ;the text in the frame
>   
>   EndFunction
>   
>    
>   
>    
>   
>   I'd
>   appreciate any suggestions.
>   
>   Also can anyone explain the difference between
>   ie4GetCurrentDocument ()and
>   ieGetCurrentDocument ().
>   
>   Although I've successfully used the
>   function ieGetUnrestrictedWindow() many
>   times in the manner shown above I've never
>   seen a good explanation of it.
>   Can anyone
>   explain it?
>   
>   John
>   Robichaud
>   
>    
>   
>   
>   
>   __________�
>   
>   View the list's information and change your
>   settings at
>   //www.freelists.org/list/jawsscripts
>   
>   
>   __________�
>   
>   View the
>   list's information and change your settings at
>   //www.freelists.org/list/jawsscripts
>   
>   
> __________�
>
> View the list's information and change your settings at
> //www.freelists.org/list/jawsscripts
>
> __________�
>
> View the list's information and change your settings at
> //www.freelists.org/list/jawsscripts
>

__________�

View the list's information and change your settings at 
//www.freelists.org/list/jawsscripts

Other related posts: