Еще используют такой трюк:
кнопка.ontouchstart = function(e){e.preventDefault();e.target.click()}
кнопка.onclick = function () {//тут функция}
Смысл в том что на сенсорных экранах при использовании только онклика будет задержка ощутимая.
А так задержки не будет и сразу будет вызван онклик при онтаче.
Но это не везде годится - например для прокручиваемого содержимого плохо, а для статичных кнопок хорошо.
Я не робот.