PortableMag
+
@@ -133,10 +134,14 @@ $(document).ready(function(){
snap: '.page',
momentum: false,
hScrollbar: false,
- /*onScrollEnd: function () {
- document.querySelector('#indicator > li.active').className = '';
- document.querySelector('#indicator > li:nth-child(' + (this.currPageX+1) + ')').className = 'active';
- }*/
+ onScrollEnd: function () {
+ var n = getPageNumber()
+ var page = $($('.page')[n])
+ $('.current.page').removeClass('current')
+ page.addClass('current')
+ // XXX need to calc the propper offset...
+ myScroll.scrollToElement(page.offset(), 40)
+ }
})
diff --git a/layout.js b/layout.js
index 3fc56dc..efc87e1 100755
--- a/layout.js
+++ b/layout.js
@@ -91,15 +91,18 @@ function getPageNumber(page){
// get the closest page to view...
} else {
// XXX this gets crazy when magazine is scaled...
- var s = $('.viewer').scrollLeft()
+ //var s = $('.viewer').scrollLeft()
+ var o = -$($('.magazine')[0]).offset().left - $('.viewer').offset().left
var W = $('.viewer').width()
var scale = getMagazineScale()
var cur = -1
var res = $('.page').map(function(i, e){
e = $(e)
var l = e.position().left
+ //var l = e.offset().left
var w = e.width()*scale
- return Math.abs((l+(w/2)) - (s+(W/2)))
+ //return Math.abs((l+(w/2)) - (s+(W/2)))
+ return Math.abs((l+(w/2)) - (o+(W/2)))
})
cur = res.index(Math.min.apply(Math, res))
return cur