Double-tap is a poor choice of gestures for touch screens. Don't do it! If you use double-tap, then single-tap on the same control will have an objectionable lag.
The browser has to use a delay to decide if single or double-tap. It is a much longer delay for touchscreen than for mouse, because of physics and kinetics - people can click a mouse much more quickly than they can tap their finger. (~ 50mSec vs 200mSec).
There used to be a "300 mSec lag" problem with the click event on touchscreens, because of the issue of double-tap recognition. But the browsers have now gotten smarter, and for the most part there is no longer a lag. The exception is when you register for double-click, then the lag is re-introduced on that specific node.
long touch has a similar issue, but it's not quite so bad, because the timer needed to recognize a long-touch is shorter than for double-tap.
You should try to use different interactions that don't introduce delays!
As far as your specific problems, we can't possibly solve them without seeing what you did. "It fails" doesn't tell us anything useful. Can you make a small demo using jsFiddle, Plunkr, etc.? And tell us exactly HOW "it fails"?
hammer.js is meant for NON-jQuery Mobile projects. You don't need it. JQM has everything you need to use touch events built-in.
Maybe you have a completely different problem. Since you mentioned "ID" I have a hunch. A common newbie JQM mistake is duplication of IDs. In a "normal" web page, you shouldn't duplicate an ID anywhere on the page. But with JQM, you must not duplicate an ID anywhere in your entire project. That's because JQM uses Ajax to load different pages into the same document, and so if you re-use an ID even on a different page, it will cause a conflict.
I try to avoid using IDs in JQM projects. You can almost always use CSS classes instead. You may need to scope queries to a specific page. If I use an ID, it is only e.g. to tie a label to an input, etc. and if I need an ID for that purpose I generate a unique ID in back end. And I never refer to IDs in CSS or in Javascript code.