title: custom attribute works only with element.getAttribute("attribute") but not "element.attribute"
body: <p>I have just noticed, that if I give a custom attribute to an html element, for example:</p>
  
  <pre><code>&lt;input type="button" id="my_button" custom_attr="custom_attr_text" value="value_text" /&gt;
  </code></pre>
  
  <p>then i can retrieve it like this:</p>
  
  <pre><code>document.getElementById("my_button").getAttribute("custom_attr");
  </code></pre>
  
  <p>and it will return <code>"custom_attr_text"</code>, but if I do</p>
  
  <pre><code>document.getElementById("my_button").custom_attr;
  </code></pre>
  
  <p>then it returns <code>undefined</code>!</p>
  
  <p>I also noticed that with a built in attribute (for example <code>value</code> or <code>id</code>) both of the above works fine!
  Could somebody please explain why is this happening?</p>