WCAG Rule 14: Missing or empty H1 element.

Rule Mapping

Markup References

Validation Code

Dependencies

None

Context

document

Parameters

None

Code

function (ruleContext) {
  var h1Nodes = ruleContext.getElementsByTagName("h1");
  var emptyH1Nodes = [];
  for (var i = 0; i < h1Nodes.length; ++i) {
    var h1Node = h1Nodes[i];
    if (util.getNodeTextRecursively(h1Node).length == 0) {
      emptyH1Nodes.push(h1Node);
    } // endif
  } // endfor
  
  var passed = (h1Nodes.length == 1 || h1Nodes.length == 2) && emptyH1Nodes.length == 0;
  
  return new ValidationResult(passed, emptyH1Nodes, '', '', []);
} // endfunction