// jquery.jparallax.js // 0.3 // Stephen Band // // Dependencies: // jquery.js // jquery.dimensions.js // // Project and Documentation: // http://webdev.stephband.info/parallax.html // Options: // // viewport: jQuery(element) // mouseport: jQuery(element) // layer[n]:{ n is the index of the child of the viewport element // xparallax: boolean // yparallax: boolean // xorigin: 'left' | 'centre','center','middle' | 'right' | 0-1 // yorigin: 'top' | 'centre','center','middle' | 'bottom' | 0-1 // } // timerPause: milliseconds // animDuration: milliseconds // CLOSURE (function(jQuery) { // PRIVATE VARIABLES // PRIVATE FUNCTIONS function pxToInt(n) { return parseInt(n.replace('px', '')) } function stripFiletype(ref) { var x=ref.replace('.html', ''); x=x.replace('#', ''); return x; } function initOrigin(l) { // Change origin strings to numeric values if (l.xorigin=='left') {l.xorigin=0} else if (l.xorigin=='middle' || l.xorigin=='centre' || l.xorigin=='center') {l.xorigin=0.5} else if (l.xorigin=='right') {l.xorigin=1}; if (l.yorigin=='top') {l.yorigin=0} else if (l.yorigin=='middle' || l.yorigin=='centre' || l.yorigin=='center') {l.yorigin=0.5} else if (l.yorigin=='bottom') {l.yorigin=1}; } function centreLayers(layer, viewport) { // A cheap hack! for (var i=0; i=mouseport.left && mouse.pageX<=mouseport.width+mouseport.left && mouse.pageY>=mouseport.top && mouse.pageY<=mouseport.height+mouseport.top) { for (var i=0; i mouseport.softlimit*-1) { mouseport.inside=true; } else { // console.log(difference+' '+mouseport.inside) }; } else { for (var i=0; i *').length; i++) { debugString = debugString + "\n\nLayer "+(i+1)+ "\n width: "+layer[i+1].width+"px"+ "\n height: "+layer[i+1].height+"px"+ "\n xtravel: "+layer[i+1].xtravel+"px, locked: "+layer[i+1].xlock+ "\n ytravel: "+layer[i+1].ytravel+"px, locked: "+layer[i+1].ylock+ "\n xoffset: "+layer[i+1].xoffset+"px"+ "\n yoffset: "+layer[i+1].yoffset+"px"+ "\n xorigin: "+layer[i+1].xorigin+ "\n yorigin: "+layer[i+1].yorigin; for (var n=0; n