質問編集履歴

2

コードを追記しました

2020/03/22 07:11

投稿

lyzmfeqpxs54
lyzmfeqpxs54

スコア237

test CHANGED
File without changes
test CHANGED
@@ -36,41 +36,127 @@
36
36
 
37
37
  // 以下のように固定された書きかたをしている
38
38
 
39
- var ytData = [
39
+ // onYouTubeIframeAPIReadyの中が動的に変わっていく必要があるので
40
40
 
41
- {
41
+ // どのようにすればよいのかが分からない状況です
42
42
 
43
- id: 'NcgBHHMbSGg',
44
43
 
45
- area: 'sample01'
46
44
 
47
- }, {
45
+ プレーヤーの格納
48
46
 
49
- id: 'wbqOCoBkGvg',
47
+ var ytPlayer = [];
50
48
 
51
- area: 'sample02'
49
+ // プレーヤーのサイズ
52
50
 
53
- }, {
51
+ var ytWidth = 560;
54
52
 
55
- id: 'idIHKr4GvPY',
53
+ var ytHeight = 315;
56
54
 
57
- area: 'sample03'
55
+ // 各動画情報
58
56
 
59
- }, {
57
+ var ytData = [
60
58
 
61
- id: 'ke8aMAvP7pk',
59
+ {
62
60
 
63
- area: 'sample04'
61
+ id: 'vTyalZzGqus',
64
62
 
65
- }
63
+ area: 'player_17'
66
64
 
65
+ }, {
66
+
67
+ id: 'aVUlFXBazL8',
68
+
69
+ area: 'player_16'
70
+
71
+ }, {
72
+
73
+ id: 'TKFB7jisnnU',
74
+
75
+ area: 'player_15'
76
+
77
+ }, {
78
+
79
+ id: 'MGnM-4JAcR8',
80
+
81
+ area: 'player_14'
82
+
83
+ }
84
+
67
- ];
85
+ ];
86
+
87
+
88
+
89
+ // 各プレーヤーの埋め込み
90
+
91
+ function onYouTubeIframeAPIReady() {
92
+
93
+ for(var i = 0; i < ytData.length; i++) {
94
+
95
+ ytPlayer[i] = new YT.Player(ytData[i]['area'], {
96
+
97
+ width: ytWidth,
98
+
99
+ height: ytHeight,
100
+
101
+ videoId: ytData[i]['id'],
102
+
103
+ playerVars: {
104
+
105
+ rel: 0
106
+
107
+ },
108
+
109
+ events: {
110
+
111
+ 'onReady': onPlayerReady,
112
+
113
+ 'onStateChange': onPlayerStateChange
114
+
115
+ }
116
+
117
+ });
118
+
119
+ }
120
+
121
+ }
68
122
 
69
123
 
70
124
 
71
125
  ```
72
126
 
127
+ ```ruby
73
128
 
129
+
130
+
131
+ # 以下のようにkaminariでページネーションしており下にスクロールされるたびに
132
+
133
+ # プレイヤーのidが変更されてしまう
134
+
135
+
136
+
137
+ コントローラー側
138
+
139
+ @user = User.all
140
+
141
+
142
+
143
+ view側
144
+
145
+ <ul class="skill-list jscroll">
146
+
147
+ <% @users.each do |user| %>
148
+
149
+ <div id="player_<%= user.id %>"></div>
150
+
151
+ <% end %>
152
+
153
+ <%= paginate @users %>
154
+
155
+ </ul>
156
+
157
+
158
+
159
+ ```
74
160
 
75
161
  jsqrollを使用しているため、下に行くたびに、新しく動画のアドレスが呼ばれるような場合にどのように記述したらよいかが分からずこちらに質問させていただきました。
76
162
 

1

タイトルおよび一部文言の修正を行いました

2020/03/22 07:10

投稿

lyzmfeqpxs54
lyzmfeqpxs54

スコア237

test CHANGED
@@ -1 +1 @@
1
- Rails jsqrollを用いて複数のyoutubeを表示し、再生をトリガーにメソッド呼ぶ
1
+ Rails jsqrollを用いて複数の埋め込みyoutubeを表示し、再生をトリガーにjavascriptで処理行う
test CHANGED
File without changes