tor-browser

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

base-javascript.html (1145B)


      1 <!-- Please update base-data.html together with this -->
      2 <!DOCTYPE html>
      3 <meta charset="utf-8">
      4 <title>&lt;base> and javascript: URLs</title>
      5 <script src=/resources/testharness.js></script>
      6 <script src=/resources/testharnessreport.js></script>
      7 <base href="javascript:/,test">
      8 <base href="https://example.com/">
      9 <div id=log></div>
     10 <script>
     11 test(() => {
     12  const link = document.createElement("a");
     13  link.href = "blah";
     14  assert_equals(link.href, new URL("blah", document.URL).href);
     15 }, "First <base> has a javascript: URL so fallback is used");
     16 
     17 test(() => {
     18  document.querySelector("base").remove();
     19  const link = document.createElement("a");
     20  link.href = "blah";
     21  assert_equals(link.href, new URL("blah", "https://example.com/").href);
     22 }, "First <base> is removed so second is used");
     23 
     24 test(() => {
     25  const base = document.createElement("base");
     26  base.href = "javascript:/,more-test";
     27  document.head.prepend(base);
     28  const link = document.createElement("a");
     29  link.href = "blah";
     30  assert_equals(link.href, new URL("blah", document.URL).href);
     31 }, "Dynamically inserted first <base> has a javascript: URL so fallback is used");
     32 </script>