Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!doctype html>
<meta charset="utf-8">
<title>HTML Test: object - attributes</title>
<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
<link rel="author" title="Mozilla" href="https://mozilla.org">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<object id="same-origin-explicit" data="/images/green.png" type="image/png"></object>
<object id="same-origin-implicit" data="/images/green.png"></object>
<object id="cross-origin-explicit" data="http://{{hosts[][www]}}:{{ports[http][0]}}/images/green.png" type="image/png"></object>
<object id="cross-origin-implicit" data="http://{{hosts[][www]}}:{{ports[http][0]}}/images/green.png"></object>
<script>
function test_click(object) {
promise_test(async function() {
if (document.readyState != "complete") {
await new Promise(r => window.addEventListener("load", r, { once: true }));
}
let p = new Promise(resolve => {
object.addEventListener("click", function(e) {
assert_true(true, `${object.id} was clicked`);
resolve();
}, { once: true });
});
await test_driver.click(object);
await p;
}, object.id);
}
for (let origin of ["same-origin", "cross-origin"]) {
for (let implicit of ["explicit", "implicit"]) {
let id = origin + "-" + implicit;
let object = document.getElementById(id);
test_click(object);
}
}
</script>