tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

nameditem-01.html (4341B)


      1 <!DOCTYPE html>
      2 <meta charset=utf-8>
      3 <title>Named items: img id &amp; 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>