スマートフォン(iPhone/Android)でhover (rollover) を実装したい

touch系のイベントを使って、「touchしたらボタンを光らせて、離したら消える」
といった実装を行いたい場合。



cssの:hover疑似クラスは一応使えますが手を離しても色が戻らなかったので、こんな感じでtouch系のイベントで実装してみました。

$(function(){
	var start = "touchstart";
	var end   = "touchend";
$(".touchHover").bind(start,function(){
	$(this).addClass("touchstart");
	});
$(".touchHover").bind(end,function(){
	$(this).removeClass("touchstart");
	});
});
<a href="#" class="touchHover">ボタン</a>
a{background:#ccc;}
a.tohchstart{background:#ffff00;}


サンプルはこちら
スマホのroll over - jsdo.it - Share JavaScript, HTML5 and CSS