Skip to content

Commit 1a450d9

Browse files
author
Andrew Kirkpatrick
committed
Merge branch 'Working-Branch-for-Fall-2014' into Working-Branch-for-Q2-2015
2 parents a1ef635 + 78b89b4 commit 1a450d9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+617
-256
lines changed

.gitignore

+215
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,215 @@
1+
#################
2+
## Eclipse
3+
#################
4+
5+
*.pydevproject
6+
.project
7+
.metadata
8+
bin/
9+
tmp/
10+
*.tmp
11+
*.bak
12+
*.swp
13+
*~.nib
14+
local.properties
15+
.classpath
16+
.settings/
17+
.loadpath
18+
19+
# External tool builders
20+
.externalToolBuilders/
21+
22+
# Locally stored "Eclipse launch configurations"
23+
*.launch
24+
25+
# CDT-specific
26+
.cproject
27+
28+
# PDT-specific
29+
.buildpath
30+
31+
32+
#################
33+
## Visual Studio
34+
#################
35+
36+
## Ignore Visual Studio temporary files, build results, and
37+
## files generated by popular Visual Studio add-ons.
38+
39+
# User-specific files
40+
*.suo
41+
*.user
42+
*.sln.docstates
43+
44+
# Build results
45+
46+
[Dd]ebug/
47+
[Rr]elease/
48+
x64/
49+
build/
50+
[Bb]in/
51+
[Oo]bj/
52+
53+
# MSTest test Results
54+
[Tt]est[Rr]esult*/
55+
[Bb]uild[Ll]og.*
56+
57+
*_i.c
58+
*_p.c
59+
*.ilk
60+
*.meta
61+
*.obj
62+
*.pch
63+
*.pdb
64+
*.pgc
65+
*.pgd
66+
*.rsp
67+
*.sbr
68+
*.tlb
69+
*.tli
70+
*.tlh
71+
*.tmp
72+
*.tmp_proj
73+
*.log
74+
*.vspscc
75+
*.vssscc
76+
.builds
77+
*.pidb
78+
*.log
79+
*.scc
80+
81+
# Visual C++ cache files
82+
ipch/
83+
*.aps
84+
*.ncb
85+
*.opensdf
86+
*.sdf
87+
*.cachefile
88+
89+
# Visual Studio profiler
90+
*.psess
91+
*.vsp
92+
*.vspx
93+
94+
# Guidance Automation Toolkit
95+
*.gpState
96+
97+
# ReSharper is a .NET coding add-in
98+
_ReSharper*/
99+
*.[Rr]e[Ss]harper
100+
101+
# TeamCity is a build add-in
102+
_TeamCity*
103+
104+
# DotCover is a Code Coverage Tool
105+
*.dotCover
106+
107+
# NCrunch
108+
*.ncrunch*
109+
.*crunch*.local.xml
110+
111+
# Installshield output folder
112+
[Ee]xpress/
113+
114+
# DocProject is a documentation generator add-in
115+
DocProject/buildhelp/
116+
DocProject/Help/*.HxT
117+
DocProject/Help/*.HxC
118+
DocProject/Help/*.hhc
119+
DocProject/Help/*.hhk
120+
DocProject/Help/*.hhp
121+
DocProject/Help/Html2
122+
DocProject/Help/html
123+
124+
# Click-Once directory
125+
publish/
126+
127+
# Publish Web Output
128+
*.Publish.xml
129+
*.pubxml
130+
131+
# NuGet Packages Directory
132+
## TODO: If you have NuGet Package Restore enabled, uncomment the next line
133+
#packages/
134+
135+
# Windows Azure Build Output
136+
csx
137+
*.build.csdef
138+
139+
# Windows Store app package directory
140+
AppPackages/
141+
142+
# Others
143+
sql/
144+
*.Cache
145+
ClientBin/
146+
[Ss]tyle[Cc]op.*
147+
~$*
148+
*~
149+
*.dbmdl
150+
*.[Pp]ublish.xml
151+
*.pfx
152+
*.publishsettings
153+
154+
# RIA/Silverlight projects
155+
Generated_Code/
156+
157+
# Backup & report files from converting an old project file to a newer
158+
# Visual Studio version. Backup files are not needed, because we have git ;-)
159+
_UpgradeReport_Files/
160+
Backup*/
161+
UpgradeLog*.XML
162+
UpgradeLog*.htm
163+
164+
# SQL Server files
165+
App_Data/*.mdf
166+
App_Data/*.ldf
167+
168+
#############
169+
## Windows detritus
170+
#############
171+
172+
# Windows image file caches
173+
Thumbs.db
174+
ehthumbs.db
175+
176+
# Folder config file
177+
Desktop.ini
178+
179+
# Recycle Bin used on file shares
180+
$RECYCLE.BIN/
181+
182+
# Mac crap
183+
.DS_Store
184+
185+
186+
#############
187+
## Python
188+
#############
189+
190+
*.py[co]
191+
192+
# Packages
193+
*.egg
194+
*.egg-info
195+
dist/
196+
build/
197+
eggs/
198+
parts/
199+
var/
200+
sdist/
201+
develop-eggs/
202+
.installed.cfg
203+
204+
# Installer logs
205+
pip-log.txt
206+
207+
# Unit test / coverage reports
208+
.coverage
209+
.tox
210+
211+
#Translations
212+
*.mo
213+
214+
#Mr Developer
215+
.mr.developer.cfg

README.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
WCAG (Web Content Accessibility Guidelines) - Working Branch
1+
WCAG (Web Content Accessibility Guidelines) - Old branch (scheduled for deletion)
22
===
33

4-
This is the working branch of the WCAG source documents. Please offer pull requests on this branch instead of the Master branch. This branch includes updates that the Working Group has accepted since publication of the latest version of the WCAG supporting documents (Techniques for WCAG 2.0 and Understanding WCAG 2.0). The Working Group intends to publish new versions of these two documents twice a year and merges the working branch into the Master in preparation for these publication events.
4+
This branch was used leading up to the Fall 2014 publication of the supporting documents and has been merged back into the master.
5+
6+
Please do not submit any new pull requests against this branch.
57

6-
Thank you for your interest in WCAG!
78

wcag20/Techniques/ua-notes/aria.html

+1
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ <h3><a name="wai-aria_notes" id="wai-aria_notes"> </a>WAI-ARIA Technology Notes<
121121
</p></li></ul><p>Does NOT support this technique:
122122
</p><ul><li><p> Windows 7 + IE 8 + NVDA 2013.1 (NO support)
123123
</p></li></ul><p>Support Notes:
124+
</p><p>Internet Explorer versions 7 through 11 do not support notifications as described in this technique when using role="alert". However, using aria-live="assertive" as described in example 1 does function correctly.
124125
</p><p>When using Firefox with JAWS and NVDA role=alert is announced as "Alert" and aria-live=assertive does not include that extra text. There is NO support for NVDA 2013.1 + IE 8. The third example uses BOTH role=alert &amp; aria-live=assertive on the error container for wider UA/AT support working in all combinations listed.
125126
</p><p>There are different methods to display an alert or assertive live region on the page and depending on how you create the error container or inject the error messages determines if it will work in the more difficult browsers/screen reader combinations like IE 8 + JAWS 14 or VoiceOver + Safari.
126127
</p></div></section></body></html>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
<!DOCTYPE HTML>
2+
<html lang="en">
3+
<head> <title>Input Error Notification with aria-live=assertive and aria-invalid using jQuery</title>
4+
<meta charset="utf-8">
5+
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
6+
<script>
7+
$(document).ready(function(e) {
8+
$('#signup').submit(function() {
9+
$('#errText').html('');
10+
$('input').removeAttr("aria-invalid");
11+
$('label').removeAttr("class");
12+
var eFlag = 0;
13+
if ($('#first').val() === '') {
14+
$('#first').attr("aria-invalid", "true");
15+
$("label[for='first']").addClass('failed');
16+
eFlag++;
17+
}
18+
if ($('#last').val() === '') {
19+
$('#last').attr("aria-invalid", "true");
20+
$("label[for='last']").addClass('failed');
21+
eFlag++;
22+
}
23+
if ($('#email').val() === '') {
24+
$('#email').attr("aria-invalid", "true");
25+
$("label[for='email']").addClass('failed');
26+
eFlag++;
27+
}
28+
if (eFlag > 0) {
29+
$('#errText').html("Please complete all required fields (" + eFlag + ") and retry").focus();
30+
}
31+
return false;
32+
});
33+
});
34+
</script>
35+
<style type="text/css">
36+
label.failed {
37+
border: red thin solid;
38+
}
39+
</style>
40+
41+
</head>
42+
<body>
43+
<h2 tabindex="-1" id="errText" aria-live="assertive"></h2>
44+
<form name="signup" id="signup" method="post" action="#">
45+
<p>
46+
<label for="first">First Name (required)</label><br>
47+
<input type="text" name="first" id="first">
48+
</p>
49+
<p>
50+
<label for="last">Last Name (required)</label><br>
51+
<input type="text" name="last" id="last">
52+
</p>
53+
<p>
54+
<label for="email">Email (required)</label><br>
55+
<input type="text" name="email" id="email">
56+
</p>
57+
<p>
58+
<input type="submit" name="button" id="button" value="Submit">
59+
</p>
60+
</form>
61+
</body>
62+
</html>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
<!DOCTYPE html>
2+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3+
<head>
4+
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
5+
<title>Forms: Using aria-invalid </title>
6+
<style type="text/css">
7+
div.control label {
8+
margin: 0;
9+
padding: 0;
10+
padding-right: .25em;
11+
text-align: right;
12+
clear: both;
13+
float: left;
14+
}
15+
div.control {
16+
margin: .5em;
17+
}
18+
input.error {
19+
border: red thin solid;}
20+
input[type=submit] {
21+
clear: both;
22+
padding: 0;
23+
margin: 0;
24+
margin-top: .5em;
25+
margin-left: 13em;
26+
}
27+
span.errtext {
28+
margin-bottom: 1em;
29+
padding: .25em 1.4em .25em .25em;
30+
border: red thin solid;
31+
background-color: #EEEEFF;
32+
background-image:url('images/iconError.gif');
33+
background-repeat:no-repeat;
34+
background-position:right;
35+
}
36+
</style>
37+
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
38+
<script type="text/JavaScript" src="js/valcheck.js"></script>
39+
</head>
40+
<body>
41+
<h2>Forms: Using aria-invalid to identify failed fields </h2>
42+
<h3>Features</h3>
43+
<ul>
44+
<li>Places an aria-invalid attribute for a field only if the input data is not in the expected format. These also have generic error text alongside but the text is not tied to the field. </li>
45+
<li>Uses a standard generic error message against every field when no data is entered. The error message is tied to the form control using aria-describedby.</li>
46+
<li>The error displayed for a past date (after Jan 1, 2000) is associated with the field via markup</li>
47+
<li>Every form control that fails validation has a red border and an error icon to its right (placed via CSS) for visual reinforcement</li>
48+
<li>Date is not a required field; today's date is filled in as default</li>
49+
<li>The error message placed above the form is within a span tag with role=alert. The SPAN tagg is within an h2 and is read by NVDA and JAWS. VoiceOver reads it in iOS and OSX.</li>
50+
</ul>
51+
<h2> <span role="alert" id="err_final" tabindex="-1"></span></h2>
52+
53+
<form action="#" method="post" id="login3" onsubmit="return errorAlert2()">
54+
55+
<div class="control">
56+
<p><label for="pin4">Personal Id. Number (PIN) - 4 digits: [*]</label>
57+
<input type="text" size="4" name="pin4" id="pin4" /></p>
58+
</div>
59+
<div class="control">
60+
<p><label for="email">Email address: [*]</label>
61+
<input type="text" name="email" id="email" /> </p>
62+
</div>
63+
<div class="control">
64+
<p><label for="lname">Last name: [*]</label>
65+
<input type="text" name="lname" id="lname" size="12" /> </p>
66+
</div>
67+
<div class="control">
68+
<p><label for="startDt">Desired policy start date (MM / DD / YYYY)</label>
69+
<input type="text" name="startDt" id="startDt" size="12" /> </p>
70+
</div>
71+
<p><input type="hidden" name="spanval" id="spanval" />
72+
73+
<input type="submit" value="Login" id="next_btn" name="next_btn" /></p>
74+
</form>
75+
<h3>About the error messages</h3>
76+
<ul>
77+
<li>JAWS and NVDA expose a field with aria-invalid=true as "invalid entry".</li>
78+
<li>VoiceOver with Safari on OSX or iOS reads out the field as "invalid data"</li>
79+
<li>The field's label (or other accessible name) is announced before the "invalid" notification.</li>
80+
<li>The field-specific error messages when associated with aria-describedby are read by JAWS and NVDA as one tabs to the fields. VoiceOver reads these automatically only in iOS ... the error message is announced after a slight pause after the label is read. In OSX on a MacBook Pro, the VO+Shift+h key combination causes the error text referenced by aria-describedby to be read by VoiceOver.</li>
81+
</ul>
82+
83+
84+
</body>
85+
</html>

0 commit comments

Comments
 (0)