<!DOCTYPE HTML> <meta charset=utf-8> <title>NamedNodeMap Test: Supported property names</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <div id="log"></div> <div id="simple" class="fancy">Simple</div> <input id="result" type="text" value="" width="200px"> <script> test(function() { var elt = document.querySelector('#simple'); assert_array_equals(Object.getOwnPropertyNames(elt.attributes), ['0','1','id','class']); }, "Object.getOwnPropertyNames on NamedNodeMap"); test(function() { var result = document.getElementById("result"); assert_array_equals(Object.getOwnPropertyNames(result.attributes), ['0','1','2','3','id','type','value','width']); }, "Object.getOwnPropertyNames on NamedNodeMap of input"); test(function() { var result = document.getElementById("result"); result.removeAttribute("width"); assert_array_equals(Object.getOwnPropertyNames(result.attributes), ['0','1','2','id','type','value']); }, "Object.getOwnPropertyNames on NamedNodeMap after attribute removal"); </script>