Hello there, is it possible for javascript to lock a mouse when you click on a button or a div? I was doing some google search but I failed to find a script for locking a keyboard or mouse. I just would want to add this feature on my site. Thanks!

No. No sane browser / OS setup will let a webpage 'lock the keyboard or mouse'. Think for 30 seconds why this is the case.

If you want to disable all interaction with your site when the user clicks something.. oh-k, something like document.body.disabled = true/false; should suffice, although I can't see why you'd want to do this.

The other case, actually locking the keyboard or mouse system-wide; no chance. Even some application programming languages ( non-web ) wont let you do this. I'm sure your individual motives are good, but that's far from the point.

Maybe throw a little popup window that says 'please unplug your peripherals'... O_o

I saw something like that before, when you click on a div it locks the mouse and when you click it back, it unlocks it, but i forgot the site and i forgot to copy the script and that was in javascript. *sigh*

If the mouse is locked, how do you click again to unlock it?

What do you mean exactly by 'locked'? I took that to mean disabled/no longer functional.

I think I misused the word lock, I don't really know the exact term, but it was something like it disables the use of left click (maybe). When you left click on a certain area, you cannot click on any of the buttons, but if you click again back to that area, it will enable you to click again (left click). Oh well, I'll just try to find that script again, thank you sir. :)

Maybe something like this: (untested)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
    <meta http-equiv"Script-Content-Type" content="text/javascript">
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta http-equiv="Expires" content="0"> <!-- disable caching -->
    <title>Example</title>
    <style type="text/css">
      span {
        border: 1px solid black;
        background-color: #eeffee;
        cursor: hand;
        cursor: pointer;
      }
    </style>
    <script type="text/javascript">
    // The first click will be to disable controls
    var toEnable = false;
    function enableDisable(frmName) {
      var frm = document.forms[frmName];
      if(!frm)
        return;
      var elms = frm.elements;
      for(var i = 0, size = elms.length; i < size; ++i) {
        var elem = elms[i];
        if(!elem.disabled)
          continue;
        if(toEnable) {
          elem.disabled = false;
        } else {
          elem.disabled = true;
        }
      }
      toEnable = !toEnable;
    }
    </script>
</head>
<body>
  <span onclick="enableDisable('frm');">Click here to enable/disable form controls</span>
  <br><br>
  <form id="frm" name="frm" action="#">
    <input type="text" name="txtOne">
    <br>
    <input type="submit">
  </form>
</body>
</html>

I am totally sick of website developers trying to take control of the user's computer.

That computer and its controls belongs to the owner of the computer, NOT TO YOU.

You could be charged with computer crimes if you succeed in locking part of a user's computer.

If you have files so sensitive that you don't want the user doing something with his computer, then DON'T PUBLISH THEM ON THE INTERNET.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.