バックラウンドの位置を変更する単純な視差効果を作成しようとしていますが、iOS Safari では動きがスムーズではありません。背景は、タッチスクリーンを離したときにのみ位置が変わりますが、スクロールしても変わりません。
Javascript:
$(window).bind('touchmove',function(e){
var scrolled = $(window).scrollTop();
$('#home').css('backgroundPosition', 'center ' + (0-(scrolled*2)) +'px');
});
実際には、 chnaging だけでなくbackgroundPosition
、top
for div 要素でも発生します。
$('#home').css('top', (scrolled*2) +'px');
同時にmargin-top
正常に動作し、動きはスムーズです。
何が間違っているのですか? また、マウスホイールイベントと同じように iOS で動作させるにはどうすればよいですか?