tor-browser

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

input-events-arrow-key-on-number-input-prevent-default.html (965B)


      1 <!DOCTYPE html>
      2 <html>
      3 <head>
      4 <script src="/resources/testharness.js"></script>
      5 <script src="/resources/testharnessreport.js"></script>
      6 <script src="/resources/testdriver.js"></script>
      7 <script src="/resources/testdriver-vendor.js"></script>
      8 </head>
      9 <body>
     10 <input type="number" id="number_input">
     11 <script>
     12 promise_test(async function() {
     13  const inputElement = document.getElementById("number_input");
     14  let events = [];
     15  inputElement.addEventListener("beforeinput", (e) => {
     16    e.preventDefault();
     17    events.push("beforeinput");
     18  });
     19  inputElement.addEventListener("input", () => {
     20    events.push("input");
     21  });
     22  inputElement.addEventListener("change", () => {
     23    events.push("change");
     24  });
     25 
     26  inputElement.focus();
     27 
     28  await new test_driver.send_keys(inputElement, "\uE013");
     29  assert_array_equals(events, ['beforeinput']);
     30 }, "Number input should not fire input and change event if the beforeinput event is default prevented");
     31 </script>
     32 </body>
     33 </html>