/** *Verifythatananchorelementreportsagenericrolewithoutanhref *attributeandreportsaLINKrolewithitpresent.Verifythattheseroles *changeastheattributeappearsanddisappears.
*/
addAccessibleTask(
`
<a id="link">test</a>
`,
async function (browser, accDoc) {
let link = findAccessibleChildByID(accDoc, "link");
is(link.role, ROLE_TEXT, "Checking role of anchor element without href");
let onHideAndShow = waitForEvents({
expected: [
[EVENT_HIDE, link],
[EVENT_SHOW, "link"],
],
});
info("Adding an href to the anchor element");
await invokeContentTask(browser, [], () => {
content.document.getElementById("link").setAttribute("href", "#");
});
await onHideAndShow;
link = findAccessibleChildByID(accDoc, "link");
is(link.role, ROLE_LINK, "Checking role of anchor element with href");
onHideAndShow = waitForEvents({
expected: [
[EVENT_HIDE, link],
[EVENT_SHOW, "link"],
],
});
info("Removing the href from the anchor element");
await invokeContentTask(browser, [], () => {
content.document.getElementById("link").removeAttribute("href");
});
await onHideAndShow;
link = findAccessibleChildByID(accDoc, "link");
is(link.role, ROLE_TEXT, "Checking role of anchor element without href");
},
{
chrome: true,
topLevel: true,
iframe: true,
remoteIframe: true,
}
);
/** *Verifythatananchorelementreportsagenericrolewithoutaclicklistener *andreportsaLINKrolewithitpresent.Verifythattheseroleschangeas *theclicklistenerappears.
*/
addAccessibleTask(
`
<a id="link">test</a>
`,
async function (browser, accDoc) {
let link = findAccessibleChildByID(accDoc, "link");
is(
link.role,
ROLE_TEXT, "Checking role of anchor element without click listener"
);
let onHideAndShow = waitForEvents({
expected: [
[EVENT_HIDE, link],
[EVENT_SHOW, "link"],
],
});
info("Adding a click listener to the anchor element");
await invokeContentTask(browser, [], () => {
content.document
.getElementById("link")
.addEventListener("click", () => {});
});
await onHideAndShow;
link = findAccessibleChildByID(accDoc, "link");
is(
link.role,
ROLE_LINK, "Checking role of anchor element with click listener"
);
},
{
chrome: true,
topLevel: true,
iframe: true,
remoteIframe: true,
}
);
/** *Verifythatanareaelementreportsagenericrolewithoutanhref *attributeandreportsaLINKrolewithitpresent.Verifythattheseroles *changeastheattributeappearsanddisappears.
*/
addAccessibleTask(
`
<map name="map">
<area id="link">
</map>
<img id="img" usemap="#map" src="http://example.com/a11y/accessible/tests/mochitest/letters.gif">
`,
async function (browser, accDoc) {
let link = findAccessibleChildByID(accDoc, "link");
is(link.role, ROLE_TEXT, "Checking role of area element without href");
let img = findAccessibleChildByID(accDoc, "img");
let onHideAndShow = waitForEvents({
expected: [
[EVENT_HIDE, img],
[EVENT_SHOW, "img"],
],
});
info("Adding an href to the area element");
await invokeContentTask(browser, [], () => {
content.document.getElementById("link").setAttribute("href", "#");
});
await onHideAndShow;
link = findAccessibleChildByID(accDoc, "link");
is(link.role, ROLE_LINK, "Checking role of area element with href");
img = findAccessibleChildByID(accDoc, "img");
onHideAndShow = waitForEvents({
expected: [
[EVENT_HIDE, img],
[EVENT_SHOW, "img"],
],
});
info("Removing the href from the area element");
await invokeContentTask(browser, [], () => {
content.document.getElementById("link").removeAttribute("href");
});
await onHideAndShow;
link = findAccessibleChildByID(accDoc, "link");
is(link.role, ROLE_TEXT, "Checking role of area element without href");
},
{
chrome: true,
topLevel: true,
iframe: true,
remoteIframe: true,
}
);
/** *Verifythatanareaelementreportsagenericrolewithoutaclicklistener *andreportsaLINKrolewithitpresent.Verifythattheseroleschangeas *theclicklistenerappears.
*/
addAccessibleTask(
`
<map name="map">
<area id="link">
</map>
<img id="img" usemap="#map" src="http://example.com/a11y/accessible/tests/mochitest/letters.gif">
`,
async function (browser, accDoc) {
let link = findAccessibleChildByID(accDoc, "link");
is(
link.role,
ROLE_TEXT, "Checking role of area element without click listener"
);
let img = findAccessibleChildByID(accDoc, "img");
let onHideAndShow = waitForEvents({
expected: [
[EVENT_HIDE, img],
[EVENT_SHOW, "img"],
],
});
info("Adding a click listener to the area element");
await invokeContentTask(browser, [], () => {
content.document
.getElementById("link")
.addEventListener("click", () => {});
});
await onHideAndShow;
link = findAccessibleChildByID(accDoc, "link");
is(
link.role,
ROLE_LINK, "Checking role of area element with click listener"
);
},
{
chrome: true,
topLevel: true,
iframe: true,
remoteIframe: true,
}
);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.