Sha256: 54c507172721a649808c3dcf24af8d5a7dbe7adf44fee4b3f657ff86e9475e80

Contents?: true

Size: 906 Bytes

Versions: 104

Compression:

Stored size: 906 Bytes

Contents

/*global dom */
/*eslint complexity: ["error",20] */

const visualRoles = [
	'checkbox',
	'img',
	'radio',
	'range',
	'slider',
	'spinbutton',
	'textbox'
];

/**
 * Check if an element is an inherently visual element
 * @method isVisualContent
 * @memberof axe.commons.dom
 * @instance
 * @param  {Element} element The element to check
 * @return {Boolean}
 */
dom.isVisualContent = function(element) {
	/*eslint indent: 0*/
	const role = element.getAttribute('role');
	if (role) {
		return visualRoles.indexOf(role) !== -1;
	}

	switch (element.nodeName.toUpperCase()) {
		case 'IMG':
		case 'IFRAME':
		case 'OBJECT':
		case 'VIDEO':
		case 'AUDIO':
		case 'CANVAS':
		case 'SVG':
		case 'MATH':
		case 'BUTTON':
		case 'SELECT':
		case 'TEXTAREA':
		case 'KEYGEN':
		case 'PROGRESS':
		case 'METER':
			return true;
		case 'INPUT':
			return element.type !== 'hidden';
		default:
			return false;
	}
};

Version data entries

104 entries across 104 versions & 1 rubygems

Version Path
govuk_publishing_components-17.12.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.11.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.10.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.9.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.8.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.7.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.6.1 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.6.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.5.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.4.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.3.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.2.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.1.1 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.1.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-17.0.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-16.29.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-16.28.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-16.27.1 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-16.27.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js
govuk_publishing_components-16.26.0 node_modules/axe-core/lib/commons/dom/is-visual-content.js