From 251436e728adb37621fb88fa602341896255e895 Mon Sep 17 00:00:00 2001 From: fieg Date: Tue, 13 May 2014 23:31:23 +0200 Subject: [PATCH 1/4] added load event object instead of scalar url as argument --- CHANGELOG.md | 5 +++++ src/jquery-ias.js | 10 +++++++--- test/02-listeners-test.js | 32 ++++++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3aa5a54f..3b2b3a58 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ Changelog ========= +## 2.1.1 + +* Changed argument of `load` event from url to event object +* Fixed `prev()` return value + ## 2.1.0 * Added History extension diff --git a/src/jquery-ias.js b/src/jquery-ias.js index 3e6ca163..11f703bd 100644 --- a/src/jquery-ias.js +++ b/src/jquery-ias.js @@ -1,5 +1,5 @@ /** - * Infinite Ajax Scroll v2.1.0 + * Infinite Ajax Scroll v2.1.1 * A jQuery plugin for infinite scrolling * http://infiniteajaxscroll.com * @@ -171,9 +171,13 @@ delay = delay || this.defaultDelay; - self.fire('load', [url]); + var loadEvent = { + url: url + }; + + self.fire('load', [loadEvent]); - return $.get(url, null, $.proxy(function(data) { + return $.get(loadEvent.url, null, $.proxy(function(data) { $itemContainer = $(this.itemsContainerSelector, data).eq(0); if (0 === $itemContainer.length) { $itemContainer = $(data).filter(this.itemsContainerSelector).eq(0); diff --git a/test/02-listeners-test.js b/test/02-listeners-test.js index da26716f..85103d96 100644 --- a/test/02-listeners-test.js +++ b/test/02-listeners-test.js @@ -44,6 +44,38 @@ describe("IAS", function () { return deferred.promise; }); + it("should allow url to be changed in load event", function() { + var deferred = when.defer(); + + jQuery.ias({ + container : '.listing', + item: '.post', + pagination: '.navigation', + next: '.next-posts a' + }); + + // first listener changes the url + jQuery.ias().on('load', function (loadEvent) { + // assert that it isn't already there + buster.refute.contains(loadEvent.url, "ajax=1"); + + loadEvent.url = loadEvent.url + "?ajax=1"; + }); + + // second listener asserts the url is changed + jQuery.ias().on('load', function (loadEvent) { + buster.assert.contains(loadEvent.url, "ajax=1"); + }); + + scrollDown().then(function() { + wait(2000).then(function() { + deferred.resolve(); + }); + }); + + return deferred.promise; + }); + it("should call render listeners when render is complete", function() { var deferred = when.defer(); var spy1 = this.spy(); From 8b8c00fc105e4deb1d110a3e1bcd6d0e2518ad13 Mon Sep 17 00:00:00 2001 From: fieg Date: Tue, 13 May 2014 23:32:06 +0200 Subject: [PATCH 2/4] fixed jquery lib path --- test/buster.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/test/buster.js b/test/buster.js index 3631176f..d7b37f0a 100644 --- a/test/buster.js +++ b/test/buster.js @@ -1,10 +1,14 @@ -var config = module.exports; +var config = module.exports, + fs = require('fs'), + bower = { + jquery: JSON.parse(fs.readFileSync('bower_components/jquery/bower.json', 'utf8')) + }; config["My tests"] = { rootPath: "../", environment: "browser", // or "node" libs: [ - "bower_components/jquery/jquery.min.js" + "bower_components/jquery/" + bower.jquery.main, ], sources: [ "src/callbacks.js", From eb50da96bf1ab3512102326c08171ad7823f5d63 Mon Sep 17 00:00:00 2001 From: fieg Date: Tue, 13 May 2014 23:32:23 +0200 Subject: [PATCH 3/4] bumped version --- README.md | 4 ++-- bower.json | 4 ++-- ias.jquery.json | 2 +- package.json | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 58f4757a..bfc4f583 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -Infinite Ajax Scroll 2 -====================== +Infinite Ajax Scroll +==================== A jQuery plugin to turn your paginated pages into infinite scrolling pages with ease. diff --git a/bower.json b/bower.json index a7c6bd1a..74cb3f85 100644 --- a/bower.json +++ b/bower.json @@ -1,8 +1,8 @@ { "name": "jquery-ias", - "version": "2.1.0", + "version": "2.1.1", "homepage": "http://infiniteajaxscroll.com", - "main": "src/jquery.ias.js", + "main": "src/jquery-ias.js", "ignore": [ "**/.*", "node_modules", diff --git a/ias.jquery.json b/ias.jquery.json index 631d68d6..fe49a3e4 100644 --- a/ias.jquery.json +++ b/ias.jquery.json @@ -2,7 +2,7 @@ "name": "ias", "title": "Infinite Ajax Scroll", "description": "jQuery plugin that progressively enhances your server-side pagination", - "version": "2.1.0", + "version": "2.1.1", "homepage": "http://infiniteajaxscroll.com", "download": "http://infiniteajaxscroll.com/download.html", "docs": "http://infiniteajaxscroll.com/docs/getting-started.html", diff --git a/package.json b/package.json index 0eb9847f..32ffa12e 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "jquery-ias", "title": "Infinite Ajax Scroll", - "version": "2.1.0", + "version": "2.1.1", "description": "A jQuery plugin that turns your server-side pagination into an infinite scrolling one using AJAX", "homepage": "http://infiniteajaxscroll.com", "main": "src/jquery-ias.js", From a690dd7093ca32e0ed7eadb016b301276e808142 Mon Sep 17 00:00:00 2001 From: fieg Date: Tue, 13 May 2014 23:54:30 +0200 Subject: [PATCH 4/4] fixed jquery lib path --- test/buster.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/test/buster.js b/test/buster.js index d7b37f0a..4d6e920f 100644 --- a/test/buster.js +++ b/test/buster.js @@ -1,14 +1,20 @@ var config = module.exports, fs = require('fs'), bower = { - jquery: JSON.parse(fs.readFileSync('bower_components/jquery/bower.json', 'utf8')) + jquery: { + main: 'jquery.js' + } }; +if (fs.existsSync('bower_components/jquery/bower.json')) { + bower.jquery = JSON.parse(fs.readFileSync('bower_components/jquery/bower.json', 'utf8')) +} + config["My tests"] = { rootPath: "../", environment: "browser", // or "node" libs: [ - "bower_components/jquery/" + bower.jquery.main, + "bower_components/jquery/" + bower.jquery.main.replace(/^\.\//, ''), ], sources: [ "src/callbacks.js",