ユーザーのスクロールに基づいて「選択された」liクラスが変化する水平スクロールがあります。私がやろうとしているのは、しばらくスクロールすると消えるので、選択したliを固定位置にすることです。
私のコード:
<div id="scroller2">
<ul id="ulscroller">
<li value="01" class="selected">1<div class="li-image"><img src="img/icon-dark.png" style="float: left;"></div></li>
<li value="02">2<div class="li-image"><img src="img/icon-dark.png" style="float: left;"></div></li>
...
<li value="30">30<div class="li-image"><img src="img/icon-dark.png" style="float: left;"></div></li>
</ul>
</div>
var scroller2 = document.getElementById("scroller2"),
lis = scroller2.getElementsByTagName("li"),
divisionsWidth2 = lis[0].offsetWidth - 20,
current = 0
scroller2.onscroll = function(){
var selected = Math.floor(scroller2.scrollLeft/divisionsWidth2);
if (current!==selected) {
lis[current].className="";
lis[selected].className="selected";
current = selected;
$("#nono2").html(lis[current].value);
}
};
Fiddle をチェックしてください: http://jsfiddle.net/7uCS8/1/