<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script type="text/javascript" src="../jquery.scrollTo.js"></script>
<script type="text/javascript">
jQuery(function( $ ){
// This one is important, many browsers don't reset scroll on refreshes
// Reset all scrollable panes to (0,0)
$('div.pane').scrollTo( 0 );
// Reset the screen to (0,0)
$.scrollTo( 0 );
// TOC, shows how to scroll the whole window
$('#toc a').click(function(){//$.scrollTo works EXACTLY the same way, but scrolls the whole screen
$.scrollTo( this.hash, 1500, { easing:'elasout' });
$(this.hash).find('span.message').text( this.title );
return false;
});
// Target examples bindings
var $paneTarget = $('#ifr').contents();
$('#relative-selector').click(function(){
$paneTarget.stop().scrollTo( 'li:eq(14)', 800 );
});
$('#jquery-object').click(function(){
var $target = $paneTarget.find('li:eq(14)');
$paneTarget.stop().scrollTo( $target , 800 );
});
$('#dom-element').click(function(){
var target = $paneTarget.find('ul').get(0).childNodes[20];
$paneTarget.stop().scrollTo( target, 800 );
});
$('#absolute-number').click(function(){
$paneTarget.stop().scrollTo( 150, 800 );
});
$('#absolute-number-hash').click(function(){
$paneTarget.stop().scrollTo( { top:800,left:700} , 800 );
});
$('#absolute-position').click(function(){
$paneTarget.stop().scrollTo( '520px', 800 );
});
$('#absolute-position-hash').click(function(){
$paneTarget.stop().scrollTo( {top:'110px',left:'290px'}, 800 );
});
$('#relative-position').click(function(){
$paneTarget.stop().scrollTo( '+=100', 500 );
});
$('#relative-position-hash').click(function(){
$paneTarget.stop().scrollTo( {top:'-=100px',left:'+=100'}, 500 );
});
$('#percentage-position').click(function(){
$paneTarget.stop().scrollTo( '50%', 800 );
});
// Options examples bindings, they will all scroll to the same place, with different options
function reset_o(){//before each animation, reset to (0,0), skip this.
$paneOptions.stop().stop();
$paneOptions[0].scrollLeft = $paneOptions[0].scrollTop = 0;
};
var $paneOptions = $('#pane-options');
$('#options-no').click(function(){
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 1000 );
});
$('#options-axis').click(function(){// only scroll horizontally
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 1000, { axis:'x' } );
});
$('#options-duration').click(function(){// it's the same as specifying it in the 2nd argument
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', { duration: 3000 } );
});
$('#options-easing').click(function(){
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 2500, { easing:'elasout' } );
});
$('#options-margin').click(function(){//scroll to the "outer" position of the element
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 1000, { margin:true } );
});
$('#options-offset').click(function(){//same as { top:-50, left:-50 }
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 1000, { offset:-50 } );
});
$('#options-offset-hash').click(function(){
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 1000, { offset:{ top:-5,left:-30 } });
});
$('#options-offset-function').click(function(){
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 1000, {offset: function() { return {top:-30, left:-5}; }});
});
$('#options-over').click(function(){//same as { top:-50, left:-50 }
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 1000, { over:0.5 });
});
$('#options-over-hash').click(function(){
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 1000, { over:{ top:0.2, left:-0.5 } });
});
$('#options-queue').click(function(){//in this case, having 'axis' as 'xy' or 'yx' matters.
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 2000, { queue:true });
});
$('#options-onAfter').click(function(){
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 2000, {
onAfter:function(){
$('#options-message').text('Got there!');
}
});
});
$('#options-onAfterFirst').click(function(){//onAfterFirst exists only when queuing
reset_o(); $paneOptions.scrollTo( 'li:eq(15)', 1600, {
queue:true,
onAfterFirst:function(){
$('#options-message').text('Got there horizontally!');
},
onAfter:function(){
$('#options-message').text('Got there vertically!');
}
});
});
});
</script>