 <p>Try this:</p> <pre><code>$("#test-element").on("click" ,function() { alert("click"); }); </code></pre> <p>The document way of doing it is weird too. That would make sense to me if used for a class selector, but in the case of an id you probably just have useless DOM traversing there. In the case of the id selector, you get that element instantly.</p>