スマートフォン(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.touchHover{background:#ffff00;}


サンプルはこちら

スマホのroll over - jsdo.it - Share JavaScript, HTML5 and CSS

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