[jawsscripts] Re: Object/element identification in html land? was The problematic highlight bar non-reading of an HTML-based "dropDown," that isn't identified as an editCombo box?

  • From: "Geoff Chapman" <gch@xxxxxxxxxxxxxxxx>
  • To: <jawsscripts@xxxxxxxxxxxxx>
  • Date: Wed, 4 Dec 2013 13:53:15 +1100

Oh my goodness Scott! This is all simply amazing stuf! Thank you so so so
much for all the energy and time you've put into sharing all of this below
to assist me!
absolutely incredible!
Wow!

It'll certainly take a little further digesting/sifting, for I'm
unfortunately not a really experienced Scripter myself, and I can see, (as
ai feared it would be,) that this is quite comprehensive and involved
coding, at least for my experience level.
But I can't tell you how much I appreciate you having shared all these code
segment examples!  Sooo helpful!

OK so I'm a bit torn here, and not sure exactly which way to jump re next
protocol steps. In the sense that, I sooo know what it feels like, when you
give your all, and put in a whole bunch of time/energy into trying to help
someone out, only to find that it ends up entangling you in even more
undesired spoon-feeding energy/work, when the person comes back with further
basic questions about what you've already considerably spent yourself in 
putting out
there! :( :)

So, If you'd like to have a break and let someone else perhaps have a shot
at answering the below, please feel totaly free to do that.  As the last
thing I wanna do is to engender that feeling of mental tedium/burden
described above.
:)

However, unfortunately I do have a couple of what are first really basic
queries I know, in relation to the syntax of working with objects as your
code does below.

Then, after getting a handle on this, I feel I'm gonna have to glean a
little more in-depth knowledge, on understanding, let alone effectively
working with,
the innards of html object element information, such as class, TagName, and
style - etc, before I'm gonna have a hope of getting to my solution;
if it turns out I need a scripting solution, which it's certainly looking
unfortunately like it might be the case so far. :(

I presume from a small investigative study of your below, that you feel
Class is a reasonable criteria validator to be utilizing for a conditional
behaviour modification, "If ... then",  check?

So, I guess the first thing to ask is, to negate your having to tediously
answer such low-level queries as to exactly how/when  the period is meant to
be used, when coding involving objects, which at present, never having tried
to work with objects before I'm totally unfamiliar with,
might you/anyone have any tips on where i might go, to get a bit of a
crashCourse tutorial on the basics of working with Objects?
Specifically, the usage of the period in the middle of names? Which I 
haven't seen before?

secondly, Assuming the Virtual Cursor is turned completely off with 
Jaws+Zee, this would presumably look the same to jaws as a 
"FormsModeIsActive" state.  Would that be correct?
Because it looks like so far the most effective way for this user to 
traverse this form, and drop down the lists on each of these boxes with the 
downArrow key, is if we disable Virtual cursor, rather than him flip in and 
out of Forms mode, (as we've set it to manual at this point.)


Third, Would you feel up to sharing any more of your obviously considerable 
experience,
as to how you might bring about the natural jaws behaviour we're shooting 
for here in such a situation? Assuming I can narrow down these objects 
reliably, so that I can put specific alternate behaviour for 
DownArrow/UpArrow/SayLine, when these particular elements gain focus?


Thanks again so much Scott for what you've already done below.
It's sure given me a light into this I didn't know existed.  So I hope it is 
helping others to know/grow as well.

Regards
Geoff C.
----- Original Message ----- 
From: "Scott Huey" <shuey@xxxxxxxxx>
To: <jawsscripts@xxxxxxxxxxxxx>
Sent: Tuesday, December 03, 2013 4:12 AM
Subject: [jawsscripts] Re: Object/element identification in html land? was
The problematic highlight bar non-reading of an HTML-based "dropDown," that
isn't identified as an editCombo box?


> I've been building some scripting for an AJAX based web application, which
> includes specific behavioral modification based on conditionals of HTML
> element type as you're describing.  In the context of my scripting, I was
> co-opting the arrow key navigation to behave uniquely when the "focused"
> section of the page was built with specific components which did not
> behave "naturally" (i.e. the bane of my existence, the "ajax__tab_xp
> ajax__tab_container ajax__tab_default" interactive tab container DIV
> object). It took me about a couple days to sort it all out, but in the end
> I was able to build out a nested conditional statement which could
> accurately check for details of the object in question. The steps required
> are radically different depending on which cursor is active. In the
> context of the web app I'm working with, JAWS and Invisible Cursors return
> wildly inaccurate data, so I was able to constrain my cases to a binary
> choice between either the PC Cursor ("IF IsFormsModeActiv
> e() THEN") and the Virtual Cursor ("IF isVirtualPCCursor() THEN").
>
> If the active cursor is the PC cursor (i.e. Forms Mode is active), the
> process is a relatively straightforward one using pure Document Object
> Model (DOM) level interactions. The DOM contains a method for instantly
> returning the current object with focus, "document.ActiveElement", which
> can then be queried directly for its specific details. JAWS code to
> retrieve the information would look as follows:
>
> /* --- Start Code Segment --- */
> Var object oDocument, object oFoc, string sElementID
> let oDocument = IEGetCurrentDocument()
> let sElementID = oDocument.activeElement.ID
> let oFoc = oDocument.getElementByID(sElementID)
> ; From here, I could now manipulate the object directly further in the
> scripting, including directly extract data about its class, tag, and
> style.
> /* --- End Code Segment --- */
>
> If the VirtualPC cursor is active and the user is traversing the OSM, I
> think we're stuck using the GetElementDescription function and extracting
> the relevant substring from its return. Conceptually, I'm absolutely
> certain that GetElementDescription itself is using more targeted
> sub-functions to find the individual parts it returns (id, class, etc.,
> which it then concatenates together), but I haven't found any
> documentation indicating what they might be so I've relied on delimiting
> the return using the newline ("\n") character as the delimiter. The
> results are fairly reliable, under the assumption that elements of
> interest will ALWAYS have the attribute I'm checking (i.e. when I check
> for IDs, I already know in the specific web tool I'm working on that
> everything with text content drawn into the OSM has a programmatically
> assigned ID value in the DOM). For this, the code looked something like
> below:
>
> /* --- Start Code Segment --- */
> Var string sDelimited, int iIndex, object oFoc, object oDocument
> Let oDocument = IEGetCurrentDocument()
> let sDelimited = GetElementDescription (1, FALSE) ; Returned only
> information regarding the specific element, as Ancestor data is here
> irrelevant.
> let iIndex = StringSegmentIndex (sDelimited, "\n", "id=", False) ;Delimit
> the string by the NewLine character, return the index of the one for the
> ID via the tag "id="
> let sDelimited = StringSegment (sDelimited, "\n", iIndex) ;Pare down the
> string to just the single segment
> let sDelimited = StringReplaceSubstrings (sDelimited, "id=", "") ;At this
> point, sDelimited is now purely the ID
> let oFoc  = oDocument.getElementByID(sDelimited)
> ; From here, I could now manipulate the object directly further in the
> scripting, including directly extract data about its class, tag, and
> style.
> /* --- End Code Segment --- */
>
> A basic example adapted from my existing code, where I would be trying to
> extract the "current element's" Class for the purposes of a validation
> check, altogether looks like so. For reference, oDocument was set with
> IEGetCurrentDocument much higher in the function.
>
> /* --- Start Code Segment --- */
> IF FormsModeActive() Then
> Let sClass = oDocument.activeElement.className
> ELIF IsVirtualPCCursor() Then
> Let sDelimited = GetElementDescription(1, FALSE) ; Returned only
> information regarding the specific element, as Ancestor data is here
> irrelevant.
> Let iIndex = StringSegmentIndex(sDelimited, "\n", "class=", False)
> Let sClass = StringSegment(sDelimited, "\n", iIndex)
> Let sClass = StringReplaceSubstrings(sClass, "class=","")
> Else
> ;Logic in this script assumed the JAWS and Invisible Cursors represent an
> invalid state (as they return anomalous results), so this branch simply
> did cleanup and then called the original implementation of the overridden
> script
> EndIF
> /* --- End Code Segment --- */
>
> From that point, I would use sClass as part of an extended ELIF block,
> essentially working as a SELECT CASE construct, to branch the behaviors
> depending on the specific type of element on which the User had (virtual)
> focus. I think it fairly robust, in that my implementation has survived
> stability and reliability testing on the web-tool I've designed it for.
> That said, it's a scripting solution for a web tool we host in house. So
> while it's not one we wrote ourselves (if it was, I would have made it
> conform to WCAG so scripting wouldn't be necessary at all), it's on a
> server which won't be updated without our consent. I've admittedly
> designed around a specific edition of a designer tool, so YMMV of course
> but I also wouldn't recommend taking this sort of approach with any hosted
> tool that could be redesigned without warning. Just about any attribute
> you could reference for a Rich Internet Application is arbitrary in its
> specific string. The only things I would say really end
> up being set in stone (to the point that you could define them statically
> in a JAWS script) as far as a Web App is concerned are the flat Tag Names,
> and of course ARIA markups. Theoretically if there are ARIA markups in
> your web application, then scripting shouldn't be needed.
>
>
>
>
>
> -----Original Message-----
> From: jawsscripts-bounce@xxxxxxxxxxxxx
> [mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Geoff Chapman
> Sent: Sunday, December 01, 2013 4:42 PM
> To: jawsscripts@xxxxxxxxxxxxx
> Subject: [jawsscripts] Object/element identification in html land? was The
> problematic highlight bar non-reading of an HTML-based "dropDown," that
> isn't identified as an editCombo box?
>
> Another perhaps even more basic question related to my issue though that
> occurs.
>
> In Html land, where it seems we're not talking about identifying certain
> so-called windows, at the detection of which we might wish to alter
> certain default behaviour, but rather, elements? or Objects?"
> How would one go about even setting up conditional statements to check if
> we were focused on a certain object or element, like these particular
> edit/list-box combo controls, to even introduce a solution? Once we've
> come up with one that works anyway?
>
> E.g. in the element information, part of which I'll rePaste below, We read
> things like Class, and ID, and Tag DIV, etc.
> So is it possible in Script land, to somehow code up conditional
> statements that might look for these identifiers, and to thus insert
> behaviour change when located?
> How might one even begin to go about doing this?
> Is such methodology in the least reliable/robust in a browser based
> situation such as this?
>
> Or, if too onerous to answer directly, does anyone know just where I might
> even begin to go for study of such a situation where this might be being
> done somewhere already?
>
> Here's a little code from the original element information on this
> particular control:
>
>
>
>>> Element Information:
>
> Tag INPUT has 7 parameters:
>
> autocomplete=off
>
> class= x-form-text x-form-field  x-form-focus
>
> id=par-1C05555973514DF39BE96CF44694A3B2-d
>
> size$
>
> style
> tabindex!002
>
> type=text
>
> MSAA Role*
>
>
> Tag DIV has 3 parameters:
>
> class=x-form-field-wrap x-form-field-trigger-wrap  x-trigger-wrap-focus
>
> id=ext-gen437
>
> style=
>
> Tag DIV has 3 parameters:
>
> class=x-form-element
>
> id=x-form-el-par-1C05555973514DF39BE96CF44694A3B2-d
>
> style=
>
> Tag DIV has 3 parameters:
>
> class=x-form-item
>
> id=ext-gen434
>
> tabindex=-1
>
> Tag DIV has 3 parameters:
>
> class= x-request-column x-request-column-out x-form-label-top x-column
>
> id=ext-comp-1504
>
> style=
>
> ----- Original Message ----- 
> From: "Jim Snowbarger" <Snowman@xxxxxxxxxxxxxxxx>
> To: <jawsscripts@xxxxxxxxxxxxx>
> Sent: Saturday, November 30, 2013 2:53 PM
> Subject: [jawsscripts] Re: The problematic highlight bar non-reading of an
> HTML-based "dropDown," that isn't identified as an editCombo box?
>
>
>> Does anybody know what window jaws will search for a custom highlight?
>> That
>> isn't a applicaition-wide search, is it?
>> Will it not search if a normal caret can be found?
>> If not, how could one make it ignore the caret, and use highlight
>> searching
>> only.
>>
>> ----- Original Message ----- 
>> From: "Geoff Chapman" <gch@xxxxxxxxxxxxxxxx>
>> To: <jawsscripts@xxxxxxxxxxxxx>
>> Sent: Friday, November 29, 2013 9:08 PM
>> Subject: [jawsscripts] Re: The problematic highlight bar non-reading of
>> an
>> HTML-based "dropDown," that isn't identified as an editCombo box?
>>
>>
>> Hi everyone.
>>
>> NO joy with any of the suggestions tried so far, except for Arder's
>> below.
>> haven't gotten to try that one yet, so keep any other suggestions on this
>> coming.
>>
>> Jackie when I get a remote login to this system, I'll be able to trial a
>> few
>> more things like HSC's GetColorAtPoint functionality, as opposed to the
>> Jaws+TopRow5 Get TextColor Foreground/Bakground, the dude I'm working
>> with
>> was certainly surprised when what he thought was a blue highlight bar,
>> got
>> defined as Grey13 on lavender.
>> Although I thought lavender was a type of blue, but ... hey, what would I
>> know.
>>
>> Jim tested with the Jaws cursor tucked firmly out of the way, and
>> invisible
>> cursor on highlighted text just with focus etc, still thinks it's grey13
>> on
>> Lavender, whereas the non-highlighted text in the list is identified as
>> Grey13 on white. so we tried setting the custom highlight as anything on
>> Lavender, since it seemed to us that it was maybe the background that was
>> doing the highlighting, but, still no joy. jaws doesn't track it as
>> highlight is moved up and down.
>> Sigh.
>> ----- Original Message ----- 
>> From: "Artur Räpp" <rtr@xxxxxxxxx>
>> To: <jawsscripts@xxxxxxxxxxxxx>
>> Sent: Friday, November 29, 2013 5:36 PM
>> Subject: [jawsscripts] Re: The problematic highlight bar non-reading of
>> an
>> HTML-based "dropDown," that isn't identified as an editCombo box?
>>
>>
>>> Hello,
>>>
>>> On a webpage I found following solution with a "edit-combo"
>>>
>>> I moved to edit field (edit part of the edit-combo), turned off the
>>> virtual cursor, typed some letter, pressed once down arrow, pressed tab
>>> once, landed on the listbox part and then moved down with down arrow.
>>> After I found what I needed, I turned virtual cursor again on.
>>>
>>> On another such HTML editcombo I didn't found any solution and copied
>>> the choices into a file and copi-pasted from the file the right choice
>>> into edit field. With the full text system chose the right choice. The
>>> coices were static. To get the choices, I used ins+ctrl+shft+f1 keyboard
>>> command (Advanced Element Information).
>>>
>>> my 0.01$.
>>>
>>> Artur
>>>
>>> 29.11.2013 2:00, Geoff Chapman kirjutas:
>>>> Hi Scripters.
>>>> Ok, in relation to my query the other day, about a particular so-called
>>>> "drop-down,"type element on a particular client's workPlace site that
>>>> Jaws will not handle correctly,
>>>> I now have more information about this, and would very much appreciate
>>>> anyone's views on where I might even start to solve this problem, as
>>>> it's
>>>> a dealBreaker for this poarticular employed person, re being able to do
>>>> his job on the new system the company is rolling out in February.
>>>> It's a bit of a lengthy query, but I'd appreciate those who're able, to
>>>> stick with me whilst I try and elaborate what, I, think is so far going
>>>> on here.
>>>>
>>>> Ok So, first, this is an html-based
>>>> system, and everything else here seems to be beautifully accessible,
>>>> even
>>>> the fields are all labelled properly.
>>>>
>>>> Second, I've turned off AutoForms mode, as I find this mode very
>>>> problematic and just annoying to navigate, after years of using the
>>>> manual forms mode modality.
>>>> Also trying to eliminate as much of the so-called automatic smarts, as
>>>> possible, to eliminate unknown and possibly erroneous behaviours etc.
>>>>
>>>> However there's this one particular totally problematic
>>>> control-type/element, which consists of initially what Jaws identifies
>>>> as
>>>> a straight ahead, edit, box.  However, this particular element,
>>>> operates
>>>> in practise, actually, more like what I understand to be often defined
>>>> by
>>>> jaws as an "EditCombo", control.
>>>> Whereby, as you start typing into the edit part of the field, a
>>>> "drop-down" list appears,matching the entries it finds related to the
>>>> letters in the text query entered so far.
>>>>
>>>> (Additionally, the field visually contains a little downpointing
>>>> graphical triangle, which sighted users may click on to drop down the
>>>> unfiltered list, and visually view it that way, if preferred, with no
>>>> text query filtering applied.)
>>>> But which is, not, activated at all by pressing Alt+DownArrow, as one
>>>> would expect if Jaws handled the element as a proper EditCombo.
>>>>
>>>> Now. The major problem is, that even though pressing downArrow, does
>>>> start to navigate the entries in this field, placing what it identifies
>>>> as a Grey13 on Lavender highlight highlight color over each selected
>>>> entry,
>>>> Jaws does not read this highlight,, because it's locked into the fact
>>>> that there's presumably still an iBeam edit cursor sitting in the edit
>>>> box the whole time. So it just keeps reReading, "Edit," plus whatever
>>>> the
>>>> current text query value has been typed in, and is thus populating that
>>>> edit field, upon each arrow press.
>>>>
>>>> now another perhaps relevant aspect to understand about this particular
>>>> controlType, as compared to some others I've seen, which although not
>>>> identifying as EditCombos either, appear to behave in this very way,
>>>> but
>>>> which jaws does quite happily read,
>>>> Is thatt in our version, the control doesn't immediately populate the
>>>> edit field, with the entire selection one navigates to with the arrow
>>>> keys.
>>>> Whereas, the ones that jaws does happily appear to read properly, do
>>>> seem
>>>> to do this.
>>>> Therefore, in those fields where jaws does identify what one has
>>>> arrowed
>>>> to,
>>>> it's probably not doing so by reading/tracking the highllight bar, but
>>>> simply by reading what's appearing at the edit cursor.
>>>>
>>>> My first thought was to try and reClass the window, but, this didn't
>>>> have
>>>> any good effect, since of course as ai realized later, what I want to
>>>> do
>>>> here, is reClass, as far as Jaws is concerned, these individual
>>>> elements,
>>>> which are probably not the same as whole windows anyway.
>>>> When I looked at the class of the window in focus, it just showed some
>>>> basic high-level seemingly irrelevant class  such as
>>>> Class = MozillaContentWindowClass etc.
>>>>
>>>> So no joy there.
>>>>
>>>>
>>>>
>>>> My second thought, was to try and identify the custom highlight color,
>>>> and assign this as a custom highlight in jaws, hoping to attract it's
>>>> attention to the fact that it should be checking for, and
>>>> tracking/reading, anything in that highlight color.
>>>>
>>>> However, I have no joy doing that either.
>>>>
>>>> putting the jaws cursor on it, it reckons the highlight is Grey13 on
>>>> Lavender, but, yep, this didn't work either.
>>>>
>>>>
>>>>
>>>> So has anyone got any bright ideas as to what I might try next?
>>>> Is Custom Highlight tracking even working in jaws15 at present anywayz?
>>>> Some way I can tell jaws how to properly handle this type of element?
>>>> ignoring the edit box cursor, and tracking the highlight bar instead?
>>>> Below I have included the rather comvoluted, but possibly helpful to
>>>> someone who may know, element information from the jaws+Shift+f1,
>>>> whilst
>>>> over this particular field.
>>>>
>>>> Thanks much for any tips!
>>>> See below for the tech stuff about the elemtn.
>>>>
>>>>
>>>>
>>>> Element Information:
>>>>
>>>> Tag INPUT has 7 parameters:
>>>>
>>>> autocomplete=off
>>>>
>>>> class= x-form-text x-form-field  x-form-focus
>>>>
>>>> id=par-1C05555973514DF39BE96CF44694A3B2-d
>>>>
>>>> size$
>>>>
>>>> style
>>>> tabindex!002
>>>>
>>>> type=text
>>>>
>>>> MSAA Role*
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-form-field-wrap x-form-field-trigger-wrap  x-trigger-wrap-focus
>>>>
>>>> id=ext-gen437
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-form-element
>>>>
>>>> id=x-form-el-par-1C05555973514DF39BE96CF44694A3B2-d
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-form-item
>>>>
>>>> id=ext-gen434
>>>>
>>>> tabindex=-1
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-request-column x-request-column-out x-form-label-top x-column
>>>>
>>>> id=ext-comp-1504
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-column-inner
>>>>
>>>> id=ext-gen423
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-panel-body x-panel-body-noheader x-panel-body-noborder
>>>> x-column-layout-ct
>>>>
>>>> id=ext-gen386
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen385
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-panel request-view-category x-panel-noborder
>>>>
>>>> id=ext-comp-1503
>>>>
>>>> style=
>>>>
>>>> Tag FORM has 5 parameters:
>>>>
>>>> class=x-panel-body ss-svc-form-body x-panel-body-noheader
>>>> x-panel-body-noborder x-form
>>>>
>>>> enctype=application/x-www-form-urlencoded
>>>>
>>>> id=ext-gen184
>>>>
>>>> method=post
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen335
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-panel ss-svc-form x-panel-noborder x-form-label-left
>>>> x-box-item
>>>>
>>>> id=ext-comp-1270
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-box-inner
>>>>
>>>> id=ext-gen334
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-box-layout-ct
>>>>
>>>> id=ext-comp-1272
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-panel-body x-panel-body-noheader
>>>>
>>>> id=ext-gen318
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen316
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-panel x-frs-sc-param-form ss-svc-form
>>>>
>>>> id=ext-comp-1268
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-panel-body x-panel-body-noheader x-panel-body-noborder
>>>>
>>>> id=ext-gen315
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen314
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class= x-panel tab-panel parameters-tpl x-flex-portal-child
>>>> x-panel-noborder
>>>>
>>>> id=ext-comp-1283
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-flex-portal-child-frame
>>>>
>>>> id=ext-comp-1284
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-tab-panel-body x-tab-panel-body-top
>>>>
>>>> id=ext-gen224
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-tab-panel-bwrap
>>>>
>>>> id=ext-gen223
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-tab-panel x-frs-flex-portlet
>>>>
>>>> id=ext-comp-1239
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-panel-body x-panel-body-noheader x-panel-body-noborder
>>>>
>>>> id=ext-gen208
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen207
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-panel x-frs-flex-portal x-panel-noborder x-border-panel
>>>>
>>>> id=ext-comp-1223
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-panel-body x-panel-body-noheader x-panel-body-noborder
>>>> x-border-layout-ct
>>>>
>>>> id=ext-gen206
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen205
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-panel x-panel-noborder
>>>>
>>>> id=ext-comp-1227
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-panel-body x-frs-flex-panel-body x-panel-body-noheader
>>>>
>>>> id=ext-gen187
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen185
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-panel x-frs-formview
>>>>
>>>> id=ext-comp-1222
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-panel-body x-panel-body-noheader x-panel-body-noborder
>>>>
>>>> id=ext-gen17
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen16
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-panel x-frs-content x-border-panel
>>>>
>>>> id=ext-comp-1002
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-panel-body x-panel-body-noborder x-border-layout-ct
>>>>
>>>> id=ext-gen12
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-mc
>>>>
>>>> id=ext-gen15
>>>>
>>>> Tag DIV has 1 parameters:
>>>>
>>>> class=x-panel-mr
>>>>
>>>> Tag DIV has 1 parameters:
>>>>
>>>> class=x-panel-ml
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen11
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-panel x-panel-noborder
>>>>
>>>> id=WorkspaceFrame
>>>>
>>>> style=
>>>>
>>>> Tag BODY has 3 parameters:
>>>>
>>>> href=https://kfchelp-stg.saasit.com/WorkspaceLoader.aspx?Id=ServiceReq&Profile=ObjectWorkspace&LayoutName=SDA-YAI&TabId=ext-comp-1101
>>>>
>>>> id=main_body
>>>>
>>>> rssúlse
>>>>
>>>> MSAA Role
>>>>
>>>> Tag IFRAME has 8 parameters:
>>>>
>>>> class=x-managed-iframe
>>>>
>>>> frameborder=0
>>>>
>>>> id=ext-gen112
>>>>
>>>> name=ext-gen112
>>>>
>>>> scrolling=auto
>>>>
>>>> src
>>>> style
>>>> title=Object Workspace
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-panel-body x-panel-body-noheader x-panel-body-noborder
>>>>
>>>> id=ext-gen111
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 2 parameters:
>>>>
>>>> class=x-panel-bwrap
>>>>
>>>> id=ext-gen110
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-panel x-panel-noborder
>>>>
>>>> id=panelext-comp-1101
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-border-panel
>>>>
>>>> id=app-frame-body
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-box-item x-border-layout-ct
>>>>
>>>> id=app-content-wrapper
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class=x-box-inner
>>>>
>>>> id=ext-gen10
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-box-layout-ct
>>>>
>>>> id=ext-comp-1003
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-app-content x-border-panel
>>>>
>>>> id=AppBody
>>>>
>>>> style=
>>>>
>>>> Tag DIV has 3 parameters:
>>>>
>>>> class= x-app-frame x-border-layout-ct
>>>>
>>>> id=BorderWrapper
>>>>
>>>> style=
>>>>
>>>> Tag BODY has 3 parameters:
>>>>
>>>> href=https://kfchelp-stg.saasit.com/Default.aspx
>>>>
>>>> id=main_body
>>>>
>>>> rssúlse
>>>>
>>>> MSAA Role
>>>>
>>>> Press ESC to close this message.
>>>>
>>>>
>>>> *****
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Also, today in IE, (haven't tried yet in other browsers) I ran across a
>>>> Suburb/postcode field, at the below URL, which I wanted you to just
>>>> eyeball as it
>>>> *appeared* to work similarly to how I imagine our dropdowns on your
>>>> site
>>>> are working? which this one, jaws reads perfectly fine? but am unsure
>>>> of
>>>> course
>>>> of the backEnd element/Javascript running ... etc.
>>>>
>>>>
>>>>
>>>> It's at the following URL:
>>>>
>>>> https://www.oxfam.org.au/my/donate/typhoon-haiyan-yolanda?utm_campaign=Typhoon_2nd_ask&utm_medium=Email&utm_source=Typhoon_2nd_ask
>>>>
>>>>
>>>> Leaving virtual cursor enabled for the moment, After tabbing to the
>>>> correct field, Hit enter to turn on forms mode, then type something
>>>> that
>>>> will bring
>>>> up multiple entries in the list, then hit down arrow. Try it in your
>>>> version of IE?
>>>>
>>>> For me here, in IE8, jaws reads each highlighted entry just fine as one
>>>> arrows up and down in this list,
>>>>
>>>> without having to assign any custom highlight colors at all.
>>>>
>>>>
>>>> For interest, though I know it won't mean much to you, here's the
>>>> backend
>>>> stuff re the element that Jaws reports when doing a Control+Insert+F1
>>>> on
>>>> that
>>>> field in IE 8, without forms mode enabled.
>>>>
>>>> (note that this Insert+Shift+F1 keystroke doesn't work when either
>>>> forms
>>>> mode is enabled or virtual cursor is off, which are effectively the
>>>> same
>>>> thing
>>>> anyway:)
>>>>
>>>>
>>>> Element Information:
>>>>
>>>>
>>>> Tag INPUT has 11 parameters:
>>>> aria-autocomplete=list
>>>> aria-haspopup=true
>>>> autocomplete=off
>>>> class=ui-autocomplete-input
>>>> id=suburb_ac
>>>> jquery172036613851847330175
>>>> name=suburb_ac
>>>> role=textbox
>>>> tabindex!
>>>> type=text
>>>> value=EPPING,  NSW,  2121
>>>> MSAA Role*
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> class=input
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> class=clearfix
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> id=autoggle-au
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> class=form-row
>>>>
>>>>
>>>> Tag FIELDSET has 0 parameters:
>>>>
>>>>
>>>> Tag FORM has 8 parameters:
>>>> _submit_attached=True
>>>> accept-charset=utf-8
>>>> action=https://www.oxfam.org.au/my/donate/typhoon-haiyan-yolanda
>>>> class=myform form-stacked
>>>> enctype=application/x-www-form-urlencoded
>>>> id=donation_form
>>>> jquery172036613851847330175(
>>>> method=post
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> class=span11 main-content
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> class=row
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> id=bootstrap
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> class=main-holder
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> id=main
>>>>
>>>>
>>>> Tag DIV has 1 parameters:
>>>> id=wrapper
>>>>
>>>>
>>>> Tag BODY has 2 parameters:
>>>> href=https://www.oxfam.org.au/my/donate/typhoon-haiyan-yolanda?utm_campaign=Typhoon_2nd_ask&utm_medium=Email&utm_source=Typhoon_2nd_ask
>>>> rssúlse
>>>> MSAA Role
>>>>
>>>>
>>>>
>>>>
>>>> Press ESC to close this message.
>>>>
>>>> __________�
>>>>
>>>> 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

Other related posts: