John I have never used createTextRange (), what are you trying to achieve? May be able to assist? Bob On 16/12/2014 04:03, John Robichaud wrote: > Jonathan > I've been searching on the net and you have it right. Starting with IE 11 > MicroSoft has eliminated createTextRange() as a method for the Body object. > Apparently they found that method presents a security vulnerability. That's > a shame, it’s a very useful method. I haven't yet figured out alternatives. > John > > > -----Original Message----- > From: jawsscripts-bounce@xxxxxxxxxxxxx > [mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Jonathan C. Cohn > Sent: Monday, December 15, 2014 5:14 PM > To: jawsscripts@xxxxxxxxxxxxx > Subject: [jawsscripts] Re: Problem capturing text using DOM in IE 11 > > I don’t know specifically, but IE11 is supposed to have replaced most of the > IE specific methods with HTML5 / JS standard code. I have yet to appreciate > how to obtain a set of methods, events and attributes that any specific > application Classes are able to provide. > > Best wishes, > > Jonathan > > > > On Dec 15, 2014, at 17:01, John Robichaud <John_Robichaud@xxxxxxxxxxx> > wrote: > >> Bob, >> I'm using your code successfully under IE 11. >> Do you or anyone else have any idea why the method createTextRange() >> does not seem to work under IE11. I've used it for years with the >> HTML Body object. It provides a great way for selecting text on a page. >> John >> >> -----Original Message----- >> From: jawsscripts-bounce@xxxxxxxxxxxxx >> [mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Bob >> Sent: Saturday, December 13, 2014 3:22 AM >> To: jawsscripts@xxxxxxxxxxxxx >> Subject: [jawsscripts] Re: Problem capturing text using DOM in IE 11 >> >> If the content your trying to access has id's assigned to the elements >> then this can also be helpful: >> >> Script Test2 () >> Var >> Object HTML, Object oElement, >> String sText >> >> Let HTML = IEGetCurrentDocument () Let oElement = >> HTML.getElementById("ID of html tag") >> Let sText = oElement.innerText >> >> MessageBox (sText) >> >> EndScript >> >> This should just give the text included in a single html element with >> the matching id. >> >> Bob >> >> >> -----Original Message----- >> From: jawsscripts-bounce@xxxxxxxxxxxxx >> [mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of John Robichaud >> Sent: 12 December 2014 18:00 >> To: jawsscripts@xxxxxxxxxxxxx >> Subject: [jawsscripts] Re: Problem capturing text using DOM in IE 11 >> >> Bob, >> Ignore my previous email. Your code does work in IE 9. >> John >> >> -----Original Message----- >> From: jawsscripts-bounce@xxxxxxxxxxxxx >> [mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Bob >> Sent: Friday, December 12, 2014 11:52 AM >> To: jawsscripts@xxxxxxxxxxxxx >> Subject: [jawsscripts] Re: Problem capturing text using DOM in IE 11 >> >> 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 >> >> __________� >> >> 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 > __________� View the list's information and change your settings at //www.freelists.org/list/jawsscripts