teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

DOM読み込み完了後に初回実行

2015/03/24 12:05

投稿

kenixi
kenixi

スコア91

answer CHANGED
@@ -3,27 +3,34 @@
3
3
 
4
4
  レスポンス中のdata.pagination.next_urlに次のページを引っ張るのがレスポンスされているので、それを引き回しています。たぶんもっといい実装方法があると思いますので、他のかたのご意見を待ちましょう。
5
5
 
6
- ```lang-js
6
+ ```lang-javascript
7
- var url = "https://api.instagram.com/v1/tags/cat/media/recent?count=3"
7
+ var url = "https://api.instagram.com/v1/tags/cat/media/recent?count=3"
8
- function hoge(){
9
- $.ajax({
10
- url: url,
11
- data: { access_token: "your-token" },
12
- dataType: "jsonp",
13
- error: function(jqXHR, textStatus, errorThrown) {
14
- $(".instagram").text(textStatus);
15
- },
16
- success: function(data, textStatus, jqXHR) {
17
- url = data.pagination.next_url;
18
- for (var i = 0, length = 5; i < length; i++) {
19
- var d = data.data[i];
20
- $(".instagram").append(
21
- $("<div>").addClass("image").append($("<a>").attr("href", d.link).attr("target", "_blank").append($("<img>").attr("src", d.images.thumbnail.url))));
22
- }
23
8
 
9
+ $(initFunc);
10
+
11
+ function initFunc(){
12
+ hoge();
13
+ }
14
+
15
+ function hoge(){
16
+ $.ajax({
17
+ url: url,
18
+ data: { access_token: "your-token" },
19
+ dataType: "jsonp",
20
+ error: function(jqXHR, textStatus, errorThrown) {
21
+ $(".instagram").text(textStatus);
22
+ },
23
+ success: function(data, textStatus, jqXHR) {
24
+ url = data.pagination.next_url;
25
+ for (var i = 0, length = 5; i < length; i++) {
26
+ var d = data.data[i];
27
+ $(".instagram").append(
28
+ $("<div>").addClass("image").append($("<a>").attr("href", d.link).attr("target", "_blank").append($("<img>").attr("src", d.images.thumbnail.url))));
24
29
  }
30
+
31
+ }
25
- });
32
+ });
26
- };
33
+ };
27
34
  ```
28
35
 
29
36
  ```lang-html

1

追加

2015/03/24 12:04

投稿

kenixi
kenixi

スコア91

answer CHANGED
@@ -1,3 +1,44 @@
1
+ 提示いただいたプラグインは使用したことがないので、超簡単なサンプルということで。
2
+ あとはまぁよしなに。。。
3
+
4
+ レスポンス中のdata.pagination.next_urlに次のページを引っ張るのがレスポンスされているので、それを引き回しています。たぶんもっといい実装方法があると思いますので、他のかたのご意見を待ちましょう。
5
+
6
+ ```lang-js
7
+ var url = "https://api.instagram.com/v1/tags/cat/media/recent?count=3"
8
+ function hoge(){
9
+ $.ajax({
10
+ url: url,
11
+ data: { access_token: "your-token" },
12
+ dataType: "jsonp",
13
+ error: function(jqXHR, textStatus, errorThrown) {
14
+ $(".instagram").text(textStatus);
15
+ },
16
+ success: function(data, textStatus, jqXHR) {
17
+ url = data.pagination.next_url;
18
+ for (var i = 0, length = 5; i < length; i++) {
19
+ var d = data.data[i];
20
+ $(".instagram").append(
21
+ $("<div>").addClass("image").append($("<a>").attr("href", d.link).attr("target", "_blank").append($("<img>").attr("src", d.images.thumbnail.url))));
22
+ }
23
+
24
+ }
25
+ });
26
+ };
27
+ ```
28
+
1
- ```lang-<ここに言語を入力>
29
+ ```lang-html
30
+ <!DOCTYPE html>
31
+ <html lang="ja">
2
- コード
32
+ <head>
33
+ <meta charset="UTF-8">
34
+ <title>フォトギャラリー</title>
35
+ </head>
36
+ <body>
37
+ <div class="instagram"></div>
38
+ <script src="http://code.jquery.com/jquery.js"></script>
39
+ <script src="instagram.js"></script>
40
+ <button id="button" onclick="hoge()">next_page</button>
41
+ </body>
42
+ </html>
43
+
3
44
  ```