// スクローラーvar scroller = {	targetPosition : 0,	currentPosition : 0,	targetId : "",	scrollSpeed : 80,	init : function() {		$('a[href*=#]').click(function(){			$(this).attr('href').match(/#/g);			scroller.targetId = RegExp.rightContext;			scroller.targetPosition = Math.round($('#'+scroller.targetId).offset().top) - 50;			if (navigator.userAgent.indexOf('iPad') != -1) {				// iPadでoffset().topの値がスクロール分加わっているバグ対処。				scroller.targetPosition -= window.scrollY;			}			if($(document).height() - $(window).height() < scroller.targetPosition){				scroller.targetPosition = $(document).height() - $(window).height();			}			if (scroller.targetPosition < 0) {scroller.targetPosition = 0;}			scroller.currentPosition = $(document).scrollTop();			//			alert($('body #'+scroller.targetId).offset().top);			scroller.scroll();			return false;		});	},	scroll : function() {		var moveToPosition;		if(Math.abs(scroller.currentPosition-scroller.targetPosition) <= 1){			window.scrollTo(0,scroller.targetPosition);			scroller.currentPosition = 0;		} else {			moveToPosition = Math.round(scroller.currentPosition+((scroller.targetPosition-scroller.currentPosition)/3));			window.scrollTo(0, moveToPosition);			scroller.currentPosition = moveToPosition;			setTimeout(scroller.scroll,scroller.scrollSpeed);		}	}}
