nameditem-01.html (4341B)
1 <!DOCTYPE html> 2 <meta charset=utf-8> 3 <title>Named items: img id & name</title> 4 <link rel="author" title="Ms2ger" href="mailto:ms2ger@gmail.com"> 5 <link rel="help" href="https://html.spec.whatwg.org/multipage/#dom-document-nameditem"> 6 <script src="/resources/testharness.js"></script> 7 <script src="/resources/testharnessreport.js"></script> 8 <div id="log"></div> 9 <div id="test"> 10 <img id="a" name="b"> 11 <img id="test" name="test"> 12 <img id="test2a" name="test2b"> 13 <img id="test3a" name="test3b"> 14 <img id="test4a" name="test4b"> 15 <img id="test5a" name="test5b"> 16 <img id="test6a" name="test6b"> 17 </div> 18 <script> 19 test(function() { 20 let img = document.getElementsByTagName("img")[0]; 21 assert_equals(document.a, img); 22 assert_equals(document['a'], img); 23 assert_equals(document.b, img); 24 assert_equals(document['b'], img); 25 }, "img elements that have a name and id attribute, should be accessible by both values."); 26 27 test(function() { 28 let img = document.getElementsByTagName("img")[1]; 29 assert_equals(document.test, img); 30 assert_equals(document['test'], img); 31 }, "img elements that have a name and id attribute with same value."); 32 33 test(function() { 34 let img = document.getElementsByTagName("img")[2]; 35 assert_equals(document.test2a, img); 36 assert_equals(document['test2a'], img); 37 assert_equals(document.test2b, img); 38 assert_equals(document['test2b'], img); 39 40 img.removeAttribute("name"); 41 assert_equals(document.test2a, undefined); 42 assert_equals(document['test2a'], undefined); 43 assert_equals(document.test2b, undefined); 44 assert_equals(document['test2b'], undefined); 45 }, "Dynamically removing the name attribute from img elements, should not be accessible."); 46 47 test(function() { 48 let img = document.getElementsByTagName("img")[3]; 49 assert_equals(document.test3a, img); 50 assert_equals(document['test3a'], img); 51 assert_equals(document.test3b, img); 52 assert_equals(document['test3b'], img); 53 54 img.removeAttribute("id"); 55 assert_equals(document.test3a, undefined); 56 assert_equals(document['test3a'], undefined); 57 assert_equals(document.test3b, img); 58 assert_equals(document['test3b'], img); 59 }, "Dynamically removing the id attribute from img elements, should still be accessible by name value."); 60 61 test(function() { 62 let img = document.getElementsByTagName("img")[4]; 63 assert_equals(document.test4a, img); 64 assert_equals(document['test4a'], img); 65 assert_equals(document.test4b, img); 66 assert_equals(document['test4b'], img); 67 68 img.name = 'test4a'; 69 assert_equals(document.test4a, img); 70 assert_equals(document['test4a'], img); 71 assert_equals(document.test4b, undefined); 72 assert_equals(document['test4b'], undefined); 73 74 img.name = 'test4c'; 75 assert_equals(document.test4a, img); 76 assert_equals(document['test4a'], img); 77 assert_equals(document.test4b, undefined); 78 assert_equals(document['test4b'], undefined); 79 assert_equals(document.test4c, img); 80 assert_equals(document['test4c'], img); 81 }, "Dynamically updating the name attribute from img elements, should be accessible by values."); 82 83 test(function() { 84 let img = document.getElementsByTagName("img")[5]; 85 assert_equals(document.test5a, img); 86 assert_equals(document['test5a'], img); 87 assert_equals(document.test5b, img); 88 assert_equals(document['test5b'], img); 89 90 img.id = 'test5b'; 91 assert_equals(document.test5a, undefined); 92 assert_equals(document['test5a'], undefined); 93 assert_equals(document.test5b, img); 94 assert_equals(document['test5b'], img); 95 96 img.id = 'test5c'; 97 assert_equals(document.test5a, undefined); 98 assert_equals(document['test5a'], undefined); 99 assert_equals(document.test5b, img); 100 assert_equals(document['test5b'], img); 101 assert_equals(document.test5c, img); 102 assert_equals(document['test5c'], img); 103 }, "Dynamically updating the id attribute from img elements, should be accessible by values."); 104 105 test(function() { 106 let img = document.getElementsByTagName("img")[6]; 107 assert_equals(document.test6a, img); 108 assert_equals(document['test6a'], img); 109 assert_equals(document.test6b, img); 110 assert_equals(document['test6b'], img); 111 112 img.remove(); 113 assert_equals(document.test6a, undefined); 114 assert_equals(document['test6a'], undefined); 115 assert_equals(document.test6b, undefined); 116 assert_equals(document['test6b'], undefined); 117 }, "img elements that is removed, should not be accessible."); 118 </script>