I have a simple question. The following code works for all the tags:
$('*').click(function(e) {  
    alert(1);
});
But, when I try this code for the div with id "content":
$('#content').click(function(e) {  
    alert(1);
});
What am I doing wrong ?
click() that can be used to attach or trigger event handlers. For a complete list of shorthand methods, see the events category. Deprecated in jQuery 1.8, removed in 1.9: The name "hover" used as a shorthand for the string "mouseenter mouseleave" .
So onclick creates an attribute within the binded HTML tag, using a string which is linked to a function. Whereas . click binds the function itself to the property element.
$(this) is a jQuery wrapper around that element that enables usage of jQuery methods. jQuery calls the callback using apply() to bind this . Calling jQuery a second time (which is a mistake) on the result of $(this) returns an new jQuery object based on the same selector as the first one.
Make sure it's within a document ready tagAlternatively, try using .live
$(document).ready(function(){
    $('#content').live('click', function(e) {  
        alert(1);
    });
});
Example:
$(document).ready(function() {
    $('#content').click(function(e) {  
      alert(1);
    });
});
#content {
    padding: 20px;
    background: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<div id="content">Hello world</div>
As of jQuery 1.7, the .live() method is deprecated. Use .on() to attach event handlers.
$('#content').on( "click", function() {
    alert(1);
});
                        Nothing.
$('#content').click(function(e) {  
    alert(1);
});
Will bind to an existing HTML element with the ID set to content, and will show a message box on click.
#content exists before using that codejs
<script
  src="https://code.jquery.com/jquery-2.2.4.min.js"
  integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44="
  crossorigin="anonymous"></script>
<script type="text/javascript">
$(document).ready(function(){
    $("#div1").on('click', function(){
            console.log("click!!!");
        });
});
</script>
html
<div id="div1">div!</div>
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With