javascriptjqueryonfocuslost-focus

Is it possible to write onFocus/lostFocus handler for a DIV using JS or jQuery?


I have a div and when the user clicks the div a function should be called. And when the user clicks something else (anything other than this div) another function should be called.

So basically i need to have onFocus() and lostFocus() function calls associated with this DIV. Is it available in JavaScript or even in jQuery?

Thanks.


Solution

  • You need to add tabindex attribute to div :

    $("#mydiv").focusin(function() {
      $("#mydiv").css("background", "red");
    });
    $("#mydiv").focusout(function() {
      $("#mydiv").css("background", "white");
    });
    #mydiv {
      width: 50px;
      height: 50px;
      border: 1px solid red;
    }
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <div id="mydiv" tabindex="100"></div>
    <div id="anotherdiv"></div>