diff options
author | Benjamin Jones <bjones@galois.com> | 2013-07-11 16:07:03 -0700 |
---|---|---|
committer | Benjamin Jones <bjones@galois.com> | 2013-07-11 16:07:03 -0700 |
commit | 265f160e55d98b37aa8d8f9b16a1a5ccb32bdb0d (patch) | |
tree | 201e18d14c075b9cfd8097e693b020ce77ac72d1 /guidelines/WCAG-1.0/guideline-5.js | |
parent | 7601ea165da8a865954df9dd49ecbf09f3556edd (diff) |
added WCAG 1.0 Guideline 5 and test HTML for it
Diffstat (limited to 'guidelines/WCAG-1.0/guideline-5.js')
-rw-r--r-- | guidelines/WCAG-1.0/guideline-5.js | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/guidelines/WCAG-1.0/guideline-5.js b/guidelines/WCAG-1.0/guideline-5.js new file mode 100644 index 0000000..48feb49 --- /dev/null +++ b/guidelines/WCAG-1.0/guideline-5.js @@ -0,0 +1,34 @@ +exports.name = "WCAG 1.0 Guideline 5: Tables"; +exports.description = "Web Accessibility Guideline: Create tables that transform gracefully"; +exports.rule = function(report) { + + /* Checkpoint 5.1 *********************************************************** + * + * For data tables, identify row and column headers. + */ + + $('table').each(function () { + if ($(this).find('th').length == 0) { + report.error('Table does not have column headers <TH>', this); + } + }); + + + /* Checkpoint 5.5 *********************************************************** + * + * Provide summaries for tables. + */ + + $('table').each(function () { + var $cap = $(this).find('caption'); + var title = $.trim($(this).attr('title')); + var sum = $.trim($(this).attr('summary')); + if ($cap.length == 0 && (title === undefined || title == '')) { + report.error('Table has no caption or title attribute', this); + } + if (sum === undefined || sum == '') { + report.error('Table has no summary attribute', this); + } + }); + +}; |