| <!DOCTYPE html> |
| <meta charset=utf-8> |
| <title>Selector: pseudo-classes (:indeterminate)</title> |
| <link rel="author" title="Denis Ah-Kang" href="mailto:denis@w3.org" id=link1> |
| <link rel=help href="https://html.spec.whatwg.org/multipage/#pseudo-classes" id=link2> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="utils.js"></script> |
| <div id="log"></div> |
| <input type=checkbox id=checkbox1> |
| <input type=checkbox id=checkbox2> |
| <input type=radio id=radio1 checked> |
| <input type=radio name=radiogroup id=radio2> |
| <input type=radio name=radiogroup id=radio3> |
| <input type=radio name=group2 id=radio4> |
| <input type=radio name=group2 id=radio5> |
| <progress id="progress1"></progress> |
| <progress id="progress2" value=10></progress> |
| |
| <script> |
| testSelector(":indeterminate", ["radio2", "radio3", "radio4", "radio5", "progress1"], "':progress' matches <input>s radio buttons whose radio button group contains no checked input and <progress> elements without value attribute"); |
| |
| document.getElementById("radio2").setAttribute("checked", "checked"); |
| testSelector(":indeterminate", ["radio4", "radio5", "progress1"], "dynamically check a radio input in a radio button group"); |
| |
| document.getElementById("radio4").click(); |
| testSelector(":indeterminate", ["checkbox1", "progress2"], "click on radio4 which is in the indeterminate state"); |
| |
| document.getElementById("progress1").setAttribute("value", "20"); |
| testSelector(":indeterminate", [], "adding a value to progress1 should put it in a determinate state"); |
| |
| document.getElementById("progress2").removeAttribute("value"); |
| testSelector(":indeterminate", ["progress2"], "removing progress2's value should put it in an indeterminate state"); |
| |
| document.getElementById("checkbox1").indeterminate = true; // set checkbox1 in the indeterminate state |
| testSelector(":indeterminate", ["checkbox1", "progress2"], "':progress' also matches <input> checkbox whose indeterminate IDL is set to true"); |
| </script> |