From 82a36455eaf669af0b17e1c1f63f33d85f45e05f Mon Sep 17 00:00:00 2001 From: hogelog Date: Mon, 19 Jan 2009 00:50:10 +0000 Subject: * fix getCurrentPage * remove debug print code git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@28640 d0d07461-0603-4401-acd4-de1884942a52 --- nextlink.js | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'nextlink.js') diff --git a/nextlink.js b/nextlink.js index 5993db7..4a9ea44 100644 --- a/nextlink.js +++ b/nextlink.js @@ -12,7 +12,7 @@ var PLUGIN_INFO = AutoPagerize 用の XPath より "[[", "]]" をマッピングします。 suVene hogelog - 0.3.4 + 0.3.5 MIT 1.2 2.0pre @@ -183,8 +183,6 @@ Autopager.prototype = { let curPage = this.getCurrentPage(doc); let page = (count < 0 ? Math.round : Math.floor)(curPage + count); - logger.log(curPage); - logger.log(page); if (page <= 1) { doc.defaultView.scrollTo(0, 0); return true; @@ -316,25 +314,28 @@ Autopager.prototype = { return page; }, getCurrentPage: function(doc) { - var page = 1.0; var xpath = '//*[@class="vimperator-nextlink-page"]'; var makers = $U.getNodesFromXPath(xpath, doc); var win = doc.defaultView; var curPos = win.scrollY; + // top of page + if(curPos == 0) return 1.0; + // bottom of page - if(curPos == win.scrollMaxY) return 1 + makers.length; + if(curPos == win.scrollMaxY) return 1.5 + makers.length; // return n.5 if between n and n+1 + var page = 1.0; for (let i = 0; i < makers.length; ++i) { let p = $U.getElementPosition(makers[i]); if (curPos == p.top) return page+1; - else if (curPos < p.top) + if (curPos < p.top) return page+0.5; ++page; } - return page; + return page+0.5; }, getInsertPoint: function(doc, siteinfo) { var insertPoint, lastPageElement; -- cgit v1.2.3