Sha256: b1b703aba689b2a2320f15488a767ba43f1fe328b1e9d4d3ccefce1ee1669098

Contents?: true

Size: 701 Bytes

Versions: 375

Compression:

Stored size: 701 Bytes

Contents

/* global text, aria */
const alwaysTitleElements = [
	'button',
	'iframe',
	'a[href]',
	{
		nodeName: 'input',
		properties: { type: 'button' }
	}
];

/**
 * Get title text
 * @param {HTMLElement}node the node to verify
 * @return {String}
 */
text.titleText = function titleText(node) {
	node = node.actualNode || node;
	if (node.nodeType !== 1 || !node.hasAttribute('title')) {
		return '';
	}

	// Some elements return the title even with role=presentation
	// This does appear in any spec, but its remarkably consistent
	if (
		!axe.commons.matches(node, alwaysTitleElements) &&
		['none', 'presentation'].includes(aria.getRole(node))
	) {
		return '';
	}

	return node.getAttribute('title');
};

Version data entries

375 entries across 375 versions & 1 rubygems

Version Path
govuk_publishing_components-29.6.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-29.5.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-29.4.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-29.3.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-29.2.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-29.1.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-29.0.1 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-29.0.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.9.2 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.9.1 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.9.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.8.1 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.8.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.7.1 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.6.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.5.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.4.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.3.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.2.0 node_modules/axe-core/lib/commons/text/title-text.js
govuk_publishing_components-28.1.0 node_modules/axe-core/lib/commons/text/title-text.js