title: `return false` in an event handler attached by addEventListener or element.on*
body: <p>Right let’s get this out the way first. Yes, I want to hide the context menu. No, I’m not trying to prevent someone lifting content off my page. Its intended use is input for an in-browser game and it will be limited to a specific area on the webpage.</p>
  
  <p>Moving from the ideological to the technical...</p>
  
  <pre><code>var mouse_input = function (evt) {
      // ...
      return false;
  }
  
  document.onmousedown = mouse_input; // successful at preventing the menu.
  document.addEventListener('mousedown', mouse_input, true); // unsuccessful
  </code></pre>
  
  <p>Could someone explain to me why the <code>addEventListener</code> version is unable to stop the context menu from firing? The only difference I was able to see in <em>Safari</em>'s <em>Web Inspector</em> was that <code>document.onmousedown</code> had a <code>isAttribute</code> value that was true whilst the <code>addEventListener</code> version had the same value as false. </p>