Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

  • This WPT test may be referenced by the following Test IDs:
<!DOCTYPE html>
<meta charset="utf-8">
<title>summary element: click behavior</title>
<link rel="author" title="Mu-An Chiou" href="mailto:hi@muan.co">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<body>
<div id="log"></div>
<details id="details">
<summary id="summary">Summary</summary>
<p>Contents</p>
</details>
</body>
<script>
// This behavior is not specified by HTML standards, but setting focus on
// clicked summary tag is the current behavior on Chrome, Safari, and Firefox
// in both Windows and macOS.
async_test(t => {
const details = document.getElementById("details")
const summary = document.getElementById("summary")
t.step_timeout(() => {
details.addEventListener("toggle", t.step_func_done(function () {
assert_equals(details.open, true, "details should be open")
assert_equals(document.activeElement, summary, "active element should be summary")
t.done()
}))
new test_driver.click(summary)
}, 200)
}, "clicking on summary should open details and set focus on summary")
</script>