You can probably just use the same preventDefault technique on events other than just "contextmenu":E.g. for drag:
$(this).bind("ondragstart", function(e) { e.preventDefault(); });
$(this).bind("drag", function(e) { e.preventDefault(); });
This would also disable dragging for other purposes, it's probably best to just target img tags with your event handlers, like so:
$("img").bind...
Nevertheless, someone could easily go into the HTML inspector and pull out your image out of the page. You can't prevent a developer or someone determined from snagging the image.