Link to home
Start Free TrialLog in
Avatar of tonelm54
tonelm54

asked on

Left, Right, DoubleClick functions

I've been trying for a while to separate different types of click onto a mouse. Originally I used to look at which mouse button is clicked, and then call a different function for each one, and then check if it was double click or not, but its a bit of a mess. What Id like to do is just add a function via a bind, as in:-

$("#divNY").on("click", function() {
  $("#divNY").html("Single Click");
});
$("#divNY").on("rightclick", function() {
  $("#divNY").html("Right Click");
});
$("#divNY").on("dblclick", function() {
  $("#divNY").html("Double Click");
});

Open in new window

If there was a div called 'divNY', like:-

<div id="divNY">nothing yet</div>

Open in new window

Reading up on things, I know I need to add a rightclick function in like to use contextmenu as well:-

(function($) {
  $.fn.rightclick = function(method) {
    $(this).bind("contextmenu rightclick", function(e) {
      e.preventDefault();
      method();
      return false;
    })
  };
})(jQuery);

Open in new window


Ive tried to just use the below, but it doesnt work:-

$("#divNY").on("contextmenu", function() {
  $("#divNY").html("Right Click");
});

Open in new window

Anyone know how I can use my code like:-

$("#divNY").on("click", function() {
  $("#divNY").html("Single Click");
});
$("#divNY").on("rightclick", function() {
  $("#divNY").html("Right Click");
});
$("#divNY").on("dblclick", function() {
  $("#divNY").html("Double Click");
});

Open in new window


Ive put my work soo far on a jsfiddle at - https://jsfiddle.net/m3yfrt7q/


Huge thanks in advance :-)

ASKER CERTIFIED SOLUTION
Avatar of Miguel Oz
Miguel Oz
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Do note that the return false from a jQuery eventHandler does more than in DOM eventHandlers.