表題のとおりですが、ページスクロールを止めようとして、touchmoveをpreventDefaultすると、clickイベントが効きづらくなります。
具体的には、click中に発生するtouchmoveも止まってしまうようで、click中に指が動くとclickイベントが発火しなくなります。
スマートフォンでご確認ください。
JavaScript
(function(win, doc) { "use strict"; doc.addEventListener("touchmove", function(evt) { evt.preventDefault(); }, false); doc.getElementById("btn").addEventListener("click", function() { alert("CLICK!"); }, true); })(this, document);