diff --git a/Demo/jquery.onepage-scroll.js b/Demo/jquery.onepage-scroll.js
index 133a8a7..e18d40a 100644
--- a/Demo/jquery.onepage-scroll.js
+++ b/Demo/jquery.onepage-scroll.js
@@ -1,5 +1,5 @@
/* ===========================================================
- * jquery-onepage-scroll.js v1.3
+ * jquery-onepage-scroll.js v1.3.1
* ===========================================================
* Copyright 2013 Pete Rojwongsuriya.
* http://www.thepetedesign.com
@@ -28,13 +28,13 @@
loop: true,
responsiveFallback: false,
direction : 'vertical'
- };
+ };
- /*------------------------------------------------*/
- /* Credit: Eike Send for the awesome swipe event */
- /*------------------------------------------------*/
+ /*------------------------------------------------*/
+ /* Credit: Eike Send for the awesome swipe event */
+ /*------------------------------------------------*/
- $.fn.swipeEvents = function() {
+ $.fn.swipeEvents = function() {
return this.each(function() {
var startX,
@@ -94,16 +94,29 @@
$.fn.transformPage = function(settings, pos, index) {
if (typeof settings.beforeMove == 'function') settings.beforeMove(index);
- $(this).css({
- "-webkit-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
- "-webkit-transition": "all " + settings.animationTime + "ms " + settings.easing,
- "-moz-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
- "-moz-transition": "all " + settings.animationTime + "ms " + settings.easing,
- "-ms-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
- "-ms-transition": "all " + settings.animationTime + "ms " + settings.easing,
- "transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
- "transition": "all " + settings.animationTime + "ms " + settings.easing
- });
+
+ // Just a simple edit that makes use of modernizr to detect an IE8 browser and changes the transform method into
+ // an top animate so IE8 users can also use this script.
+ if($('html').hasClass('ie8')){
+ if (settings.direction == 'horizontal') {
+ var toppos = (el.width()/100)*pos;
+ $(this).animate({left: toppos+'px'},settings.animationTime);
+ } else {
+ var toppos = (el.height()/100)*pos;
+ $(this).animate({top: toppos+'px'},settings.animationTime);
+ }
+ } else{
+ $(this).css({
+ "-webkit-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
+ "-webkit-transition": "all " + settings.animationTime + "ms " + settings.easing,
+ "-moz-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
+ "-moz-transition": "all " + settings.animationTime + "ms " + settings.easing,
+ "-ms-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
+ "-ms-transition": "all " + settings.animationTime + "ms " + settings.easing,
+ "transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
+ "transition": "all " + settings.animationTime + "ms " + settings.easing
+ });
+ }
$(this).one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function(e) {
if (typeof settings.afterMove == 'function') settings.afterMove(index);
});
@@ -203,23 +216,23 @@
//start modification
var valForTest = false;
var typeOfRF = typeof settings.responsiveFallback
-
+
if(typeOfRF == "number"){
- valForTest = $(window).width() < settings.responsiveFallback;
+ valForTest = $(window).width() < settings.responsiveFallback;
}
if(typeOfRF == "boolean"){
- valForTest = settings.responsiveFallback;
+ valForTest = settings.responsiveFallback;
}
if(typeOfRF == "function"){
- valFunction = settings.responsiveFallback();
- valForTest = valFunction;
- typeOFv = typeof valForTest;
- if(typeOFv == "number"){
- valForTest = $(window).width() < valFunction;
- }
+ valFunction = settings.responsiveFallback();
+ valForTest = valFunction;
+ typeOFv = typeof valForTest;
+ if(typeOFv == "number"){
+ valForTest = $(window).width() < valFunction;
+ }
}
-
- //end modification
+
+ //end modification
if (valForTest) {
$("body").addClass("disabled-onepage-scroll");
$(document).unbind('mousewheel DOMMouseScroll MozMousePixelScroll');
@@ -273,8 +286,8 @@
position: "absolute",
top: topPos + "%"
}).addClass("section").attr("data-index", i+1);
-
-
+
+
$(this).css({
position: "absolute",
left: ( settings.direction == 'horizontal' )
@@ -284,13 +297,13 @@
? topPos + "%"
: 0
});
-
+
if (settings.direction == 'horizontal')
leftPos = leftPos + 100;
else
topPos = topPos + 100;
-
-
+
+
if(settings.pagination == true) {
paginationList += "
"
}
@@ -307,7 +320,7 @@
// Create Pagination and Display Them
if (settings.pagination == true) {
if ($('ul.onepage-pagination').length < 1) $("").prependTo("body");
-
+
if( settings.direction == 'horizontal' ) {
posLeft = (el.find(".onepage-pagination").width() / 2) * -1;
el.find(".onepage-pagination").css("margin-left", posLeft);
@@ -320,7 +333,7 @@
if(window.location.hash != "" && window.location.hash != "#1") {
init_index = window.location.hash.replace("#", "")
-
+
if (parseInt(init_index) <= total && parseInt(init_index) > 0) {
$(settings.sectionContainer + "[data-index='" + init_index + "']").addClass("active")
$("body").addClass("viewing-page-"+ init_index)
@@ -349,7 +362,7 @@
$("body").addClass("viewing-page-1")
if(settings.pagination == true) $(".onepage-pagination li a" + "[data-index='1']").addClass("active");
}
-
+
if(settings.pagination == true) {
$(".onepage-pagination li a").click(function (){
var page_index = $(this).data("index");
@@ -385,6 +398,9 @@
case 40:
if (tag != 'input' && tag != 'textarea') el.moveDown()
break;
+ case 32: //spacebar
+ if (tag != 'input' && tag != 'textarea') el.moveDown()
+ break;
case 33: //pageg up
if (tag != 'input' && tag != 'textarea') el.moveUp()
break;
@@ -408,4 +424,3 @@
}(window.jQuery);
-
diff --git a/bower.json b/bower.json
index a7174f2..595e4e5 100644
--- a/bower.json
+++ b/bower.json
@@ -1,6 +1,6 @@
{
"name": "onepage-scroll",
- "version": "1.2.2",
+ "version": "1.3.1",
"author": "Pete R",
"main": [
"jquery.onepage-scroll.js",
diff --git a/jquery.onepage-scroll.js b/jquery.onepage-scroll.js
index 133a8a7..71c75ba 100644
--- a/jquery.onepage-scroll.js
+++ b/jquery.onepage-scroll.js
@@ -1,5 +1,5 @@
/* ===========================================================
- * jquery-onepage-scroll.js v1.3
+ * jquery-onepage-scroll.js v1.3.1
* ===========================================================
* Copyright 2013 Pete Rojwongsuriya.
* http://www.thepetedesign.com
@@ -94,16 +94,29 @@
$.fn.transformPage = function(settings, pos, index) {
if (typeof settings.beforeMove == 'function') settings.beforeMove(index);
- $(this).css({
- "-webkit-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
- "-webkit-transition": "all " + settings.animationTime + "ms " + settings.easing,
- "-moz-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
- "-moz-transition": "all " + settings.animationTime + "ms " + settings.easing,
- "-ms-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
- "-ms-transition": "all " + settings.animationTime + "ms " + settings.easing,
- "transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
- "transition": "all " + settings.animationTime + "ms " + settings.easing
- });
+
+ // Just a simple edit that makes use of modernizr to detect an IE8 browser and changes the transform method into
+ // an top animate so IE8 users can also use this script.
+ if($('html').hasClass('ie8')){
+ if (settings.direction == 'horizontal') {
+ var toppos = (el.width()/100)*pos;
+ $(this).animate({left: toppos+'px'},settings.animationTime);
+ } else {
+ var toppos = (el.height()/100)*pos;
+ $(this).animate({top: toppos+'px'},settings.animationTime);
+ }
+ } else{
+ $(this).css({
+ "-webkit-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
+ "-webkit-transition": "all " + settings.animationTime + "ms " + settings.easing,
+ "-moz-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
+ "-moz-transition": "all " + settings.animationTime + "ms " + settings.easing,
+ "-ms-transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
+ "-ms-transition": "all " + settings.animationTime + "ms " + settings.easing,
+ "transform": ( settings.direction == 'horizontal' ) ? "translate3d(" + pos + "%, 0, 0)" : "translate3d(0, " + pos + "%, 0)",
+ "transition": "all " + settings.animationTime + "ms " + settings.easing
+ });
+ }
$(this).one('webkitTransitionEnd otransitionend oTransitionEnd msTransitionEnd transitionend', function(e) {
if (typeof settings.afterMove == 'function') settings.afterMove(index);
});
@@ -203,7 +216,7 @@
//start modification
var valForTest = false;
var typeOfRF = typeof settings.responsiveFallback
-
+
if(typeOfRF == "number"){
valForTest = $(window).width() < settings.responsiveFallback;
}
@@ -218,8 +231,8 @@
valForTest = $(window).width() < valFunction;
}
}
-
- //end modification
+
+ //end modification
if (valForTest) {
$("body").addClass("disabled-onepage-scroll");
$(document).unbind('mousewheel DOMMouseScroll MozMousePixelScroll');
@@ -273,8 +286,8 @@
position: "absolute",
top: topPos + "%"
}).addClass("section").attr("data-index", i+1);
-
-
+
+
$(this).css({
position: "absolute",
left: ( settings.direction == 'horizontal' )
@@ -284,13 +297,13 @@
? topPos + "%"
: 0
});
-
+
if (settings.direction == 'horizontal')
leftPos = leftPos + 100;
else
topPos = topPos + 100;
-
-
+
+
if(settings.pagination == true) {
paginationList += ""
}
@@ -307,7 +320,7 @@
// Create Pagination and Display Them
if (settings.pagination == true) {
if ($('ul.onepage-pagination').length < 1) $("").prependTo("body");
-
+
if( settings.direction == 'horizontal' ) {
posLeft = (el.find(".onepage-pagination").width() / 2) * -1;
el.find(".onepage-pagination").css("margin-left", posLeft);
@@ -320,7 +333,7 @@
if(window.location.hash != "" && window.location.hash != "#1") {
init_index = window.location.hash.replace("#", "")
-
+
if (parseInt(init_index) <= total && parseInt(init_index) > 0) {
$(settings.sectionContainer + "[data-index='" + init_index + "']").addClass("active")
$("body").addClass("viewing-page-"+ init_index)
@@ -349,7 +362,7 @@
$("body").addClass("viewing-page-1")
if(settings.pagination == true) $(".onepage-pagination li a" + "[data-index='1']").addClass("active");
}
-
+
if(settings.pagination == true) {
$(".onepage-pagination li a").click(function (){
var page_index = $(this).data("index");
@@ -385,6 +398,9 @@
case 40:
if (tag != 'input' && tag != 'textarea') el.moveDown()
break;
+ case 32: //spacebar
+ if (tag != 'input' && tag != 'textarea') el.moveDown()
+ break;
case 33: //pageg up
if (tag != 'input' && tag != 'textarea') el.moveUp()
break;
@@ -408,4 +424,3 @@
}(window.jQuery);
-
diff --git a/jquery.onepage-scroll.min.js b/jquery.onepage-scroll.min.js
index 9411c31..eac8787 100644
--- a/jquery.onepage-scroll.min.js
+++ b/jquery.onepage-scroll.min.js
@@ -1 +1 @@
-!function(e){var t={sectionContainer:"section",easing:"ease",animationTime:1e3,pagination:true,updateURL:false,keyboard:true,beforeMove:null,afterMove:null,loop:true,responsiveFallback:false,direction:"vertical"};e.fn.swipeEvents=function(){return this.each(function(){function i(e){var i=e.originalEvent.touches;if(i&&i.length){t=i[0].pageX;n=i[0].pageY;r.bind("touchmove",s)}}function s(e){var i=e.originalEvent.touches;if(i&&i.length){var o=t-i[0].pageX;var u=n-i[0].pageY;if(o>=50){r.trigger("swipeLeft")}if(o<=-50){r.trigger("swipeRight")}if(u>=50){r.trigger("swipeUp")}if(u<=-50){r.trigger("swipeDown")}if(Math.abs(o)>=50||Math.abs(u)>=50){r.unbind("touchmove",s)}}}var t,n,r=e(this);r.bind("touchstart",i)})};e.fn.onepage_scroll=function(n){function o(){var t=false;var n=typeof r.responsiveFallback;if(n=="number"){t=e(window).width()0){if(typeof r.beforeMove=="function")r.beforeMove(next.data("index"));current.removeClass("active");next.addClass("active");e(".onepage-pagination li a"+".active").removeClass("active");e(".onepage-pagination li a"+"[data-index='"+t+"']").addClass("active");e("body")[0].className=e("body")[0].className.replace(/\bviewing-page-\d.*?\b/g,"");e("body").addClass("viewing-page-"+next.data("index"));pos=(t-1)*100*-1;if(history.replaceState&&r.updateURL==true){var n=window.location.href.substr(0,window.location.href.indexOf("#"))+"#"+(t-1);history.pushState({},document.title,n)}i.transformPage(r,pos,t)}};i.addClass("onepage-wrapper").css("position","relative");e.each(s,function(t){e(this).css({position:"absolute",top:topPos+"%"}).addClass("section").attr("data-index",t+1);e(this).css({position:"absolute",left:r.direction=="horizontal"?leftPos+"%":0,top:r.direction=="vertical"||r.direction!="horizontal"?topPos+"%":0});if(r.direction=="horizontal")leftPos=leftPos+100;else topPos=topPos+100;if(r.pagination==true){paginationList+=""}});i.swipeEvents().bind("swipeDown",function(t){if(!e("body").hasClass("disabled-onepage-scroll"))t.preventDefault();i.moveUp()}).bind("swipeUp",function(t){if(!e("body").hasClass("disabled-onepage-scroll"))t.preventDefault();i.moveDown()});if(r.pagination==true){if(e("ul.onepage-pagination").length<1)e("").prependTo("body");if(r.direction=="horizontal"){posLeft=i.find(".onepage-pagination").width()/2*-1;i.find(".onepage-pagination").css("margin-left",posLeft)}else{posTop=i.find(".onepage-pagination").height()/2*-1;i.find(".onepage-pagination").css("margin-top",posTop)}e("ul.onepage-pagination").html(paginationList)}if(window.location.hash!=""&&window.location.hash!="#1"){init_index=window.location.hash.replace("#","");if(parseInt(init_index)<=total&&parseInt(init_index)>0){e(r.sectionContainer+"[data-index='"+init_index+"']").addClass("active");e("body").addClass("viewing-page-"+init_index);if(r.pagination==true)e(".onepage-pagination li a"+"[data-index='"+init_index+"']").addClass("active");next=e(r.sectionContainer+"[data-index='"+init_index+"']");if(next){next.addClass("active");if(r.pagination==true)e(".onepage-pagination li a"+"[data-index='"+init_index+"']").addClass("active");e("body")[0].className=e("body")[0].className.replace(/\bviewing-page-\d.*?\b/g,"");e("body").addClass("viewing-page-"+next.data("index"));if(history.replaceState&&r.updateURL==true){var a=window.location.href.substr(0,window.location.href.indexOf("#"))+"#"+init_index;history.pushState({},document.title,a)}}pos=(init_index-1)*100*-1;i.transformPage(r,pos,init_index)}else{e(r.sectionContainer+"[data-index='1']").addClass("active");e("body").addClass("viewing-page-1");if(r.pagination==true)e(".onepage-pagination li a"+"[data-index='1']").addClass("active")}}else{e(r.sectionContainer+"[data-index='1']").addClass("active");e("body").addClass("viewing-page-1");if(r.pagination==true)e(".onepage-pagination li a"+"[data-index='1']").addClass("active")}if(r.pagination==true){e(".onepage-pagination li a").click(function(){var t=e(this).data("index");i.moveTo(t)})}e(document).bind("mousewheel DOMMouseScroll MozMousePixelScroll",function(t){t.preventDefault();var n=t.originalEvent.wheelDelta||-t.originalEvent.detail;if(!e("body").hasClass("disabled-onepage-scroll"))u(t,n)});if(r.responsiveFallback!=false){e(window).resize(function(){o()});o()}if(r.keyboard==true){e(document).keydown(function(t){var n=t.target.tagName.toLowerCase();if(!e("body").hasClass("disabled-onepage-scroll")){switch(t.which){case 38:if(n!="input"&&n!="textarea")i.moveUp();break;case 40:if(n!="input"&&n!="textarea")i.moveDown();break;case 33:if(n!="input"&&n!="textarea")i.moveUp();break;case 34:if(n!="input"&&n!="textarea")i.moveDown();break;case 36:i.moveTo(1);break;case 35:i.moveTo(total);break;default:return}}})}return false}}(window.jQuery)
\ No newline at end of file
+!function(e){var t={sectionContainer:"section",easing:"ease",animationTime:1e3,pagination:true,updateURL:false,keyboard:true,beforeMove:null,afterMove:null,loop:true,responsiveFallback:false,direction:"vertical"};e.fn.swipeEvents=function(){return this.each(function(){function i(e){var i=e.originalEvent.touches;if(i&&i.length){t=i[0].pageX;n=i[0].pageY;r.bind("touchmove",s)}}function s(e){var i=e.originalEvent.touches;if(i&&i.length){var o=t-i[0].pageX;var u=n-i[0].pageY;if(o>=50){r.trigger("swipeLeft")}if(o<=-50){r.trigger("swipeRight")}if(u>=50){r.trigger("swipeUp")}if(u<=-50){r.trigger("swipeDown")}if(Math.abs(o)>=50||Math.abs(u)>=50){r.unbind("touchmove",s)}}}var t,n,r=e(this);r.bind("touchstart",i)})};e.fn.onepage_scroll=function(n){function o(){var t=false;var n=typeof r.responsiveFallback;if(n=="number"){t=e(window).width()0){if(typeof r.beforeMove=="function")r.beforeMove(next.data("index"));current.removeClass("active");next.addClass("active");e(".onepage-pagination li a"+".active").removeClass("active");e(".onepage-pagination li a"+"[data-index='"+t+"']").addClass("active");e("body")[0].className=e("body")[0].className.replace(/\bviewing-page-\d.*?\b/g,"");e("body").addClass("viewing-page-"+next.data("index"));pos=(t-1)*100*-1;if(history.replaceState&&r.updateURL==true){var n=window.location.href.substr(0,window.location.href.indexOf("#"))+"#"+(t-1);history.pushState({},document.title,n)}i.transformPage(r,pos,t)}};i.addClass("onepage-wrapper").css("position","relative");e.each(s,function(t){e(this).css({position:"absolute",top:topPos+"%"}).addClass("section").attr("data-index",t+1);e(this).css({position:"absolute",left:r.direction=="horizontal"?leftPos+"%":0,top:r.direction=="vertical"||r.direction!="horizontal"?topPos+"%":0});if(r.direction=="horizontal")leftPos=leftPos+100;else topPos=topPos+100;if(r.pagination==true){paginationList+=""}});i.swipeEvents().bind("swipeDown",function(t){if(!e("body").hasClass("disabled-onepage-scroll"))t.preventDefault();i.moveUp()}).bind("swipeUp",function(t){if(!e("body").hasClass("disabled-onepage-scroll"))t.preventDefault();i.moveDown()});if(r.pagination==true){if(e("ul.onepage-pagination").length<1)e("").prependTo("body");if(r.direction=="horizontal"){posLeft=i.find(".onepage-pagination").width()/2*-1;i.find(".onepage-pagination").css("margin-left",posLeft)}else{posTop=i.find(".onepage-pagination").height()/2*-1;i.find(".onepage-pagination").css("margin-top",posTop)}e("ul.onepage-pagination").html(paginationList)}if(window.location.hash!=""&&window.location.hash!="#1"){init_index=window.location.hash.replace("#","");if(parseInt(init_index)<=total&&parseInt(init_index)>0){e(r.sectionContainer+"[data-index='"+init_index+"']").addClass("active");e("body").addClass("viewing-page-"+init_index);if(r.pagination==true)e(".onepage-pagination li a"+"[data-index='"+init_index+"']").addClass("active");next=e(r.sectionContainer+"[data-index='"+init_index+"']");if(next){next.addClass("active");if(r.pagination==true)e(".onepage-pagination li a"+"[data-index='"+init_index+"']").addClass("active");e("body")[0].className=e("body")[0].className.replace(/\bviewing-page-\d.*?\b/g,"");e("body").addClass("viewing-page-"+next.data("index"));if(history.replaceState&&r.updateURL==true){var a=window.location.href.substr(0,window.location.href.indexOf("#"))+"#"+init_index;history.pushState({},document.title,a)}}pos=(init_index-1)*100*-1;i.transformPage(r,pos,init_index)}else{e(r.sectionContainer+"[data-index='1']").addClass("active");e("body").addClass("viewing-page-1");if(r.pagination==true)e(".onepage-pagination li a"+"[data-index='1']").addClass("active")}}else{e(r.sectionContainer+"[data-index='1']").addClass("active");e("body").addClass("viewing-page-1");if(r.pagination==true)e(".onepage-pagination li a"+"[data-index='1']").addClass("active")}if(r.pagination==true){e(".onepage-pagination li a").click(function(){var t=e(this).data("index");i.moveTo(t)})}e(document).bind("mousewheel DOMMouseScroll MozMousePixelScroll",function(t){t.preventDefault();var n=t.originalEvent.wheelDelta||-t.originalEvent.detail;if(!e("body").hasClass("disabled-onepage-scroll"))u(t,n)});if(r.responsiveFallback!=false){e(window).resize(function(){o()});o()}if(r.keyboard==true){e(document).keydown(function(t){var n=t.target.tagName.toLowerCase();if(!e("body").hasClass("disabled-onepage-scroll")){switch(t.which){case 38:if(n!="input"&&n!="textarea")i.moveUp();break;case 40:if(n!="input"&&n!="textarea")i.moveDown();break;case 32:if(n!="input"&&n!="textarea")i.moveDown();break;case 33:if(n!="input"&&n!="textarea")i.moveUp();break;case 34:if(n!="input"&&n!="textarea")i.moveDown();break;case 36:i.moveTo(1);break;case 35:i.moveTo(total);break;default:return}}})}return false}}(window.jQuery)