-
Notifications
You must be signed in to change notification settings - Fork 0
/
LoadJson.js
62 lines (52 loc) · 1.58 KB
/
LoadJson.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
var page = 1;
var posts = [];
// loads placeholder data from site
var DataModule = (function () {
var handleData = function(page, data) {
var maxPostLimit = page * 20;
var minPostLimit = maxPostLimit - 19;
if(page == 1) {
minPostLimit = 0;
}
for (i = minPostLimit; i <= maxPostLimit; i++) {
posts.push(data[i]);
}
console.log("It works!");
};
var getJsonFromSite = function(page, callback) {
console.log("Loaded data from site")
$.ajax({
method: "GET",
dataType: 'json',
url: 'http://jsonplaceholder.typicode.com/posts/',
success: function(data) {
handleData(page, data);
if(callback)
callback(data);
}
});
};
return {
getJsonFromSite: getJsonFromSite
};
}());
var DisplayModule = (function() {
var appendData = function() {
var minPostLimit = (page * 20) - 19;
if(page == 1) {
minPostLimit = 0;
}
for (i = minPostLimit; i < posts.length; i++) {
$('<div class="post"><div class="icon"></div><div class="userId">'
+posts[i].userId+'</div><div class="id">'
+ "#" +posts[i].id+'</div><div class="title">'
+posts[i].title+'</div><div class="text">'
+posts[i].body+'</div> </div>').hide()
.appendTo('#container').fadeIn("slow");
}
console.log("Append");
}
return {
appendData: appendData
};
}());